2012-01-31 5 views

答えて

9

技術的にはNDKに制限はありません。 Someoneはこれを尋ねた後、this android-ndk Groups threadと呼ばれていました。 releventの引用:それは唯一のJavaヒープ上にあるため

は「また、これはNDKリストであることを考えると、限界は実際に 、あなたに課されていないネイティブヒープ内 配分上の制限はありません。 ...」

ダイアンHackborn

彼女は、それが悪用されるべきでないことを言うために行くんし、それがアプリケーションよりもある場合を死滅させることができます。

+0

Android Oでは、メモリの使用状況が変化しているようです。ビットマップはネイティブメモリに保存されていると思います。どのようにそれに対処しますか?たとえば、mem-cacheのサイズはどのように決めますか?私はここでこれについて尋ねました:https://stackoverflow.com/q/48091403/878126 –

2

これには簡単な答えはありません。デバイスと同じくらい多くのメモリを使用して、他のプログラムで使用しているメモリを差し引いて使用することができます。 Androidはメモリが不足していると判断すると、バックグラウンドタスクを開始するため、ソフトの制限があります。ほとんどのデバイスにはスワップ領域がありません。あなたはandroid.app.ActivityManager.MemoryInfoを使ってDalvikからデバイスのメモリに関する統計を得ることができます(私はNDKに相当すると仮定します)。

1

adb shell dumpsys meminfo PACKAGENAMEあなたのアプリのネイティブとdalvikのメモリ使用量を提供します。

関連する問題