android 開發常見錯誤彙總系列
阿新 • • 發佈:2019-01-06
1.OOM fo heapjava.lang:OutOfMemoryError: Java heap space,此OOM是由於JVM中heap的最大值不滿足需要,將設定heap的最大值調高即可。 2.OOM for Perm:java.lang:OutOfMemoryError: Java perm space,此OOM是由於JVM中perm的最大值不滿足需要,將設定perm的最大值調高即可,引數樣例為:-XX:MaxPermSize=512M 3.OOM for GC=>例如:java.lang:OutOfMemoryError: GC overhead limit exceeded,此OOM是由於JVM在GC時,物件過多,導致記憶體溢位,建議調整GC的策略 4.OOM for native thread created:java.lang.OutOfMemoryError: unable to create new native thread,此OOM是由於程序剩餘的空間不足,導致建立程序失敗 5.OOM for allocate huge array:Exception in thread "main": java.lang.OutOfMemoryError: Requested array size exceeds VM limit,此類資訊表明應用程式(或者被應用程式呼叫的APIs)試圖分配一個大於堆大小的陣列 6.OOM for small swap:Exception in thread "main": java.lang.OutOfMemoryError: request <size> bytes for <reason>. Out of swap space?,丟擲這類錯誤,是由於從native堆中分配記憶體失敗,並且堆記憶體可能接近耗盡 7.OutOfMemoryError thrown while trying to throw OutOfMemoryError; no stack trace available,丟擲這類錯誤,一般是由於方法重複呼叫、死迴圈引起,直至記憶體耗盡