5

我最近接触了 GLib,并且正在玩弄它。我已经能够用 GLib 函数替换大量的 C 库函数(顺便说一句,我是命令行处理的忠实粉丝!)。但是,我找不到太多文档的一件事是来自操作系统的信号处理。即在 Linux 中,是否有更好的方法可以处理 CTRL+C 或其他信号来终止应用程序?目前我使用信号(),但我想知道是否有一种方法可以通过 GLib 为 CTRL+C 设置我的处理程序。

一如既往,感谢您的帮助。

4

1 回答 1

7

有一种通过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);

查看特定于 UNIX 的实用程序和集成,g_unix_signal_add()

于 2013-07-26T06:13:34.890 回答