我最近接触了 GLib,并且正在玩弄它。我已经能够用 GLib 函数替换大量的 C 库函数(顺便说一句,我是命令行处理的忠实粉丝!)。但是,我找不到太多文档的一件事是来自操作系统的信号处理。即在 Linux 中,是否有更好的方法可以处理 CTRL+C 或其他信号来终止应用程序?目前我使用信号(),但我想知道是否有一种方法可以通过 GLib 为 CTRL+C 设置我的处理程序。
一如既往,感谢您的帮助。
有一种通过GLIB使用信号的方法!以下是一些可用于处理信号的函数:
guint g_unix_signal_add (gint signum,
GSourceFunc handler,
gpointer user_data);
guint g_unix_signal_add_full (gint priority,
gint signum,
GSourceFunc handler,
gpointer user_data,
GDestroyNotify notify);
GSource * g_unix_signal_source_new (gint signum);