爲NSXPCConnection
狀態的interruptionHandler
塊的文檔:當launchd殺死進程時,是否調用XPC中斷處理程序?
的中斷處理程序被調用,如果遠程進程退出或崩潰。
然而,Daemons and Services Programming Guide狀態:
XPC服務由launchd會,這將啓動他們的需求,重新啓動他們,如果他們崩潰,並終止他們(通過發送SIGKILL),當他們處於閒置狀態管理。這對使用服務的應用程序是透明的,除了處理需要響應的消息時崩潰的服務。在這種情況下,應用程序可以看到,直到該服務由launchd會
重啓如果XPC過程中殺害被閒置的XPC連接不可用,我會在interruptionHandler
得到一個回調?或者,在處理消息時應用程序崩潰時,我是否只會收到回調?我問,因爲這個測試案例似乎不可能模擬。 XPC服務生命週期不幸是一個非常黑的方塊。
你知道它做了什麼嗎?手動發送SIGKILL調用中斷處理程序。 – ctietze