2

我有一个现有的“命令行工具”项目。该工具将永远运行,直到用户关闭终端。应用程序终止时不会调用任何方法。如何在此项目中设置类似于委托方法的 applicationWillTerminate。需要在用户单击终端窗口上的关闭时接收通知。

当用户通过按 CTRL+C 退出命令时,还有什么方法可以获取通知?

4

1 回答 1

4

您应该能够捕获来自 Unix 的信号。

signal(SIGABRT, SignalHandler);
signal(SIGILL, SignalHandler);
signal(SIGSEGV, SignalHandler);
signal(SIGFPE, SignalHandler);
signal(SIGBUS, SignalHandler);
signal(SIGPIPE, SignalHandler);

然后定义一个信号处理程序:void SignalHandler(int signum) { ... }

这是一个例子

您也可以阅读信号处理,它应该会有所帮助。即使它适用于 iOS,这也可能很有用。

于 2013-04-12T13:07:13.387 回答