2
我有一個現有的「命令行工具」項目。 該工具將永久運行,直到用戶關閉終端。 當應用程序終止時,沒有任何方法會被調用。如何在此項目中設置applicationWillTerminate,如委託方法。 需要在用戶單擊終端窗口上的關閉時收到通知。Mac OS X的命令行應用程序
當用戶按下CTRL + C來退出命令時,還有什麼辦法可以獲得通知嗎?
我有一個現有的「命令行工具」項目。 該工具將永久運行,直到用戶關閉終端。 當應用程序終止時,沒有任何方法會被調用。如何在此項目中設置applicationWillTerminate,如委託方法。 需要在用戶單擊終端窗口上的關閉時收到通知。Mac OS X的命令行應用程序
當用戶按下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) { ... }
這裏是一個example。
你也可以閱讀signal handling,它應該有所幫助。即使它適用於iOS,This也可能有用。