0
我知道我不應該檢查或使用retainCount,但我想知道是否有辦法有一個對象後,才其保留計數從一個NSMutableArray刪除0如何僅當保留計數達到0時從NSMutableArray中刪除對象?
基本上,我想要將對象添加到數組中,並讓這些對象在其他窗口之間共享。當一個窗口使用它時,我希望保留計數增加1.當它不再使用時,我希望它下降。但是,如果某個窗口仍在使用它,那麼我希望它可以用於所有其他窗口。當所有的窗口不再使用它時,我希望它從數組中移除並完全釋放。
謝謝!
是的。那是我自己的問題。它並沒有解決我的問題。事實上,它提出了一個全新的KVO問題。如果我用KVO監視數組,那麼該數組中的每個對象都會保留,所以什麼都不會釋放。不知道爲什麼。 http://stackoverflow.com/questions/6400627/why-is-kvo-retaining-all-of-nsmutablearrays-objects – David
@david:如果您不依賴項目順序使用NSCountedSet(請參閱更新的答案)。 – Regexident
問題是NS * Set不支持KVO。所以我無法監控到底是什麼。 – David