2012-03-31 9 views
1

私は3 UIImagesからのメモリリークを持っています問題は私がいつでも多くの異なる場所で使用されているので、私の質問は、10秒ごとにUIImagesの1つをとり、空白のプレースホルダUIImageを作成し、その空のUIImageのイメージを元のUIImageのイメージに設定するということです。元のUIImageを解放し、元のUIImageのイメージをプレースホルダUIImageと同じにしてから、プレースホルダUIImageを解放します。 UIImageを1000回設定してから最後に解放すると、すべてのデータがクリアされるか、それとも1000回もリリースする必要がありますか?3 UIImages上の何千もの画像のメモリリークの問題

答えて

0

あなたは何をしたいのか分かりませんが、とにかく1つの解決方法しかありません。メモリリークを修正してください。他のすべては、すべてが崩壊するまであなたの問題を動かす可能性が高いです。

漏れがあるようですので、Apple memory management guidelinesに厳密に従ってはいない可能性があります。このドキュメントを読んで理解し、それに従うことが非常に重要です。これはおそらく、理解する必要があるiOS開発に関する最も重要なドキュメントです。もしあなたがそうしたとしても、巨大なプロジェクトであっても絶対にメモリリークを起こさないようにすることができます。あなたがしなければ、あなたはリークとクラッシュに終わるでしょう。

幸運なことにAppleはすでに多くの問題を見つけるのを手伝っています:Xcodeで "Analyze"を押して、スタティックアナライザーが見つけたすべての問題を修正してください。まれな例外を除いて、アナライザで報告される問題は、修正する必要があるrealの問題です。同じことはコンパイラの警告、BTWに行く。あなたのプロジェクトは単一の警告ではなく、スタティックアナライザーの問題ではなく、アプリの大きさにかかわらず、何人かの人のアプリケーションで作業していることを教えてください。それは正気を保つための唯一の方法です)。

スタティックアナライザでメモリ管理が見つからない場合は、弾丸を噛んで、イメージが使用されている場所をすべて分析して、いくつかのクラスを書き直す必要があります。すべての回避策は、後で実行する必要がある作業をシフトし、さらには状況を悪化させることさえあります。

関連する問題