iOS のアプリは、次のメカニズムを介してメモリ不足の警告を受け取ります。
[AppDelegate applicationDidReceiveMemoryWarning:]
UIApplicationDidReceiveMemoryWarningNotification
[UIViewController didReceiveMemoryWarning]
これらの項目の間にはどのような関係がありますか? それらはすべてメモリ不足の状態を受信したときに発生しますか、それとも微妙な違いがありますか? それらはどのような順序で実行されますか?
シミュレータには、「メモリ警告をシミュレートする」オプションがあります。didReceiveMemoryWarning:
これは、すべての UIViewControllersで呼び出される以外に何かしますか?
Xcode プロファイラー ツールを使用して、キャッシュ メソッドによって読み込まれた画像の周りで最近何が起こっているかを確認したいと考えています[UIImage imageNamed:]
。それらはキャッシュされていませんか? -- しかし、大量のメモリを割り当てるだけであっても、メモリ不足の状態を「適切に」トリガーする方法を知る必要があります。