2

メモリ使用量とメモリの増加を抑えるために、Instruments でアプリケーションを監視しています。そして、私は1つの奇妙なことを発見しました。NSTimer一定の間隔 (私の場合は 0.1 秒) から開始すると、Instruments でそれを確認できCFArray (store-deque)CFArray (mutable-variable)さらに増加し​​ます (毎秒約 200 バイト)。それは大丈夫ですか?それとも問題ですか?#生存数 は一定、#一過性#全体は成長します。また、全体的なメモリはまだ大きくなっています。そして、私には影がたくさんあります。のようMalloc 32 Bytesに、Malloc 48 Bytes...

もちろん、タイマー「tick」で呼び出されるメソッドは、私ではないことを確認するために空です...

私はそれらを気にする必要がありますか、それともシステム上のものですか...??? ありがとうございました。

4

1 に答える 1

1

これが古いことはわかっていますが、将来の読者が私のようにこの質問に出くわした場合に備えて、心配する必要がある数字は「Live Bytes」と「# Living」であることを指摘します. 「一時的」および「全体的」エントリには、作成された後で破棄されたアイテムが含まれます。

参考までに、 Instruments User ReferenceのAllocations Instrumentのドキュメントによると、次のようになります。

Live Bytes: 割り当てられたが解放されていないバイト数。

# Living: 作成され、まだヒープ上にあるオブジェクトの数。

#一時的: 選択した時間範囲内に作成および破棄されたオブジェクトの数。

全体のバイト数: 解放されたものを含む、割り当てられたこのタイプのバイトの総数。

#全体: 解放されたものを含め、割り当てられたこのタイプのオブジェクトまたはメモリブロックの総数。

#割り当て(ネット/全体): 現在のアカウントと合計アカウントのヒストグラム。

于 2013-09-26T00:23:18.180 に答える