【发布时间】:2011-09-15 22:00:51
【问题描述】:
有谁知道 Xcode 发送什么信号来杀死正在运行的程序?我需要一个处理程序在程序被杀死之前进行一些清理。我已经尝试过 SIGINT 和 SIGTERM 但它似乎不起作用。
【问题讨论】:
标签: c xcode macos handler signals
有谁知道 Xcode 发送什么信号来杀死正在运行的程序?我需要一个处理程序在程序被杀死之前进行一些清理。我已经尝试过 SIGINT 和 SIGTERM 但它似乎不起作用。
【问题讨论】:
标签: c xcode macos handler signals
它发送信号 SIGKILL。要验证您可以在调试模式下打开任何应用程序并在停止任务时检查控制台。
但是,如果是 kill -9,则无法捕获信号。
您想做什么样的清理工作?我认为没有必要处理该事件,因为您是从 XCode 故意这样做的。如果您尝试将此信号从 Xcode 外部(如 Terminal)发送到进程,那么这是有道理的。
【讨论】:
sem_open 来初始化一个posix 信号量。我需要调用sem_unlink 来释放信号量的字符串标识符(应用程序在无限循环中运行,它不应该停止,所以我不能从主程序执行)。我也尝试了 SIGKILL,但它似乎不起作用。
sem_unlink。只是一种解决方法,但它有效。还是谢谢!
你不应该那样做。
使用您的AppDelegate 的适当委托方法。
【讨论】: