3

iPhone アプリケーションの起動後、メモリ リークが 3 回発生しました。アプリで何をしても、これらは一定のままです(リークはもうありません)。

私のネット オブジェクト割り当ては増え続けています。特に、GeneralBlock-24 と GeneralBlock-48 の 2 つのブロックがあります。

ブロック 48 は、プログラムが使用されているときに特に悪くなり、メガバイトのメモリを消費します。両方のブロックにオブジェクトを割り当てていると思われるライブラリは QuartzCore です。

アプリには QuartzCore フレームワークへの参照がありましたが、それへのすべての参照を削除しました。

ps: これはシミュレーターではなく、すべてデバイス上にあります

4

1 に答える 1

3

それを見つけた!Instruments を使用してシミュレーターで実行すると、GeneralBlocks は単一の GeneralBlock-0 として報告されます。Web を検索すると、instrument objectAlloc レポートと QuartzCore にバグがあるようです。

そのため、メモリ モニタ インストゥルメントを追加したところ、オブジェクト割り当てがノンストップで増加し続けていたにもかかわらず、実メモリはフラットのままであることがわかりました (つまり、0.5 MB 以内で上下に移動しました)。

私はそれが他の人にとって有益な情報であることを願っています.GeneralBlock-24と48を探して、シミュレータで実行することを決定するまで、それを理解しようと1日を費やしました.

于 2009-08-15T10:38:27.757 に答える