システムメモリを完全に使い切ると、デバイスがハードリブートされます。これは以前はiPhone OSやiPod touchの限られたハードウェアで動作していたiPhone OS 2.0でより一般的でした。最近のOSのバージョンでは、アップルはメモリの上限を超えたときにアプリケーションを強制的に強制的に強制するので、これを行うのがはるかに難しくなっています。また、デバイスは以前よりもはるかに多くのメモリを持っています。
ときどきこれを行うことができる1つの方法は、アプリケーションで使用されているメモリとしてすぐに識別されない大きなテクスチャやその他のグラフィックコンポーネントを読み込むことです。私はタイトなループでGPUにデータの山をロードするときにシステムを再起動させることができました。あなたはここで似たようなことに遭遇しているかもしれません。
これは、あなたが行っているアクティブなスレッドの数に関係しているのではないかと疑いますが、システムがアプリケーションを終了させる前にデータをメモリにダンプする方が簡単でしょう。
リソースを消費するスレッドがたくさんあるのではなく、GCDやASIHTTPRequestのようなキューベースのフレームワークを使用して見たことがありますか?これらはアプリケーションにとってより効率的ですが、必要な並行性を提供することができます。
ありがとうBrad ...いつものように素晴らしい答え。私たちはASIHTTPを使用しています...この問題は、最大同時スレッド数を4以上に設定したときに上がり始めました.20時に多くのトリガーが発生し、10時にはほとんど発生しませんでした。 –