2012-08-31 98 views
1

在我的代碼中有一個罕見的情況,觀察者將被第二次刪除。這會造成問題嗎?NSNotificationCenter刪除觀察者兩次

+1

這個問題有點含糊。是否有可能提供更多關於你如何傳遞和接收通知的細節?另外,您如何從通知中心添加和刪除對象? – 5StringRyan

+0

這沒有任何意義。你說「觀察者將被第二次移除」。如果你知道它會被刪除,爲什麼你不能做些什麼來避免這種情況? – jere

回答

1

是的。如果您不是觀察者,並且嘗試刪除自己,那麼您的應用會崩潰。沒有辦法檢查你是否已經註冊,所以你必須創建一個ivar來標記你是否被添加爲觀察者(或者,甚至更好,可以計算你添加爲觀察者的次數)並在實際移除自己之前檢查伊娃。

編輯:原來你可以刪除你自己你加入之前,所以我想,雖然它不是一個偉大的設計,它不會有什麼關係,如果你刪除自己的兩倍。