さまざまなオブジェクトをNSCacheに保存し、メモリ警告がヒットしたときにそれらを自動的に削除する必要があります。だから私はNSCacheの値に入れたインスタンスをラップするのに使う、次のNSDiscardableContent実装を書いています。一般的なNSDiscardableContentの実装でNSCacheを使用する方法
しかし、私は "メモリの警告をシミュレートする"を実行するとキャッシュから削除されることはありません。 NSDiscardableContentの実装に何か問題がありますか?または、メモリの警告が発生したときに、キャッシュに値をドロップさせるために何か他の処理を行う必要がありますか?
これは答えではありませんが、あなたのdeallocメソッドで設定を使用するのは悪い習慣です。誰かがKVOなどを聴いているかわかりません。代わりに '[オブジェクトリリース]'を実行してください:) – deanWombourne
@deanWombourne Thereオブジェクトがもはや保持されていないので、 - (void)deallocでオブジェクトを聴いている人はいないはずです。それとも私は間違ったことを理解していますか – radiospiel
これ以上保存されていないからといって、誰も聴いていないというわけではありません;)Appleの話題はhttp://developer.apple.com/library/です。 mac /#documentation/Cocoa/Conceptual/MemoryMgmt/Articles/mmPractical.htmlそしてより興味深い会話はこちら:http://www.cocoabuilder.com/archive/cocoa/242096-avoiding-kvo-in-dealloc.html – deanWombourne