1

removeObserver:name:object:NSObject クラス リファレンスに記載されているように、deallocメソッドが常に実行されるとは限らないため、呼び出すのに最適な場所はどこですか??

4

1 に答える 1

1

このメモを参照している場合:

重要:アプリケーションが終了すると、プロセスのメモリは終了時に自動的にクリアされるため、オブジェクトにメッセージが送信されない場合があることに注意してくださいdealloc。すべてのメモリ管理メソッドを呼び出すよりも、単にオペレーティング システムにリソースをクリーンアップさせる方が効率的です。

通常、アプリケーションの終了時にのみ呼び出されることdeallocは保証されていません。したがって、deallocが呼び出されなくても、アプリケーションが使用するリソースは OS によってクリアされます。つまり、アプリケーションがもう存在しないため、とにかくすべてのオブジェクトがなくなるということです。

したがって、通知センターから通知オブザーバーを削除する最適な場所は、依然としてオブザーバーのdeallocメソッド内にあります。

于 2011-02-22T16:35:10.013 に答える