私は400-500 XML
個のファイルをダウンロードして解凍して解析する巨大な同期プロセスがあります。このデータを使用して、RestKit API
上に多数のコアデータオブジェクトを作成しようとしています。最初は、自動解放プールを使用せず、コアデータを最後まで保存しようとしたため、ライブバイトが450MB +のメモリ警告が表示されました。機器でのメモリの警告
これを固定して、コアデータに頻繁に保存し、@autoreleasepool
ブロックを使用しました。私のアプリをインストゥルメントで実行すると、ライブバイトが20MB〜30MBしかないことがわかりました。常にメモリを解放し、決してサイズアップしません。このプロセスはうまくいく。しかし、私は楽器なしでアプリを起動すると、ビューファイルの後に私はMemory Warning
を取得します。後でアプリがクラッシュする
instruments
ツールの有無にかかわらずアプリを実行する際の相違点は何ですか?なぜそれは別の結果で終わるのですか?
違いは、通常、Instrumentsでプロファイリングするとリリースビルドが行われ、Xcodeで実行するとデバッグビルドが行われることです。しかし、どのようにこれがこの状況に影響を与える可能性があるか分からない。 – borrrden
たとえば、デバッグ設定でゾンビを有効にできますが、リリース設定 – hooleyhoop
人ではありません - 私はこのプラットフォームを愛しています。私は、楽器がリリースビルドを使用していることを知りませんでした。私のオブジェクトが大きすぎるので、ゾンビを有効にすることは失敗でした。リリースビルドを使用しているとき、すべてが魅力的なように機能しています。 Plsはそれを私がそれを受け入れることができるように答えとして与える。あなたはそれがどれくらい私を助けたのか分かりません。ありがとうございました:) – NDY