2011-03-14 15 views
1

残っているメモリ量に基づいて、特定のカスタムオブジェクトが使用しているメモリ量を制限する方法を見つけようとしています。これを行う最も有用な方法は、特定のCオブジェクトがどれくらいのメモリを使用しているかを調べる何らかの種類のメソッドまたは関数です。このようにして、オブジェクトは事前設定された限界に達すると、それ以降に作成してメモリの警告を振り返って処理するのではなく、追加のデータの作成を拒否することができます。メモリの使用量をプログラムで確認する(ココア)

誰もがココアの方法を知っています:それは警告

を生成する前に、システムが起動に使用することができますどのくらいのより多くのメモリ指定されたオブジェクト Bによって使用されているどのくらいのメモリ A)に戻る)戻り-Ash

+0

ことを行うには文書化方法はありませんか?コアデータを使用して、そのオブジェクトの未使用部分をディスクに入れることを検討しましたか? –

答えて

3

A. malloc_size(myObject)を使用してオブジェクトのサイズを取得することができます(すべてのネストされたオブジェクトもトラバースする必要があります)。 NSCacheのドキュメントもチェックしてください。

B.いいえ、あなたはどのようなサイズのオブジェクトを使用している

+0

素晴らしいです、ありがとう!これは、ドキュメントで見つけることができない基本的なC関数です。実際には、より良い参考資料を得る必要があります。 – Ash

+1

おそらくあなたの質問のモチベーションに関連して、あなたのプロセスの推定メモリ使用量を得る方法はこちらをご覧ください:http://stackoverflow.com/questions/787160/programmatically-retrieve-memory-usage-on-iphone – Colin

関連する問題