我有一个现有的“命令行工具”项目。该工具将永远运行,直到用户关闭终端。应用程序终止时不会调用任何方法。如何在此项目中设置类似于委托方法的 applicationWillTerminate。需要在用户单击终端窗口上的关闭时接收通知。
当用户通过按 CTRL+C 退出命令时,还有什么方法可以获取通知?
我有一个现有的“命令行工具”项目。该工具将永远运行,直到用户关闭终端。应用程序终止时不会调用任何方法。如何在此项目中设置类似于委托方法的 applicationWillTerminate。需要在用户单击终端窗口上的关闭时接收通知。
当用户通过按 CTRL+C 退出命令时,还有什么方法可以获取通知?
您应该能够捕获来自 Unix 的信号。
signal(SIGABRT, SignalHandler);
signal(SIGILL, SignalHandler);
signal(SIGSEGV, SignalHandler);
signal(SIGFPE, SignalHandler);
signal(SIGBUS, SignalHandler);
signal(SIGPIPE, SignalHandler);
然后定义一个信号处理程序:void SignalHandler(int signum) { ... }
这是一个例子。