我有一個應用程序與arduino進行通信,它運行netty實例來控制arduino。問題是我沒有用完內存,但根據adb logcat,使用堆大小的總堆大小太低。我總是在%10免費附近,所以對netty服務器的任何請求都會觸發gc,此時我會得到一堆的,Android沒有足夠的堆分配
D/dalvikvm(2862): WAIT_FOR_CONCURRENT_GC blocked 189ms
甚至簡單的請求,什麼都不做(至少我)在gc暫停至少失去了一秒。我有
android:largeHeap="true"
集我的清單和仿真器件具有512 MB VM堆,但是它並不接近這個數字的任何地方分配(它是圍繞10MB分配)。我沒有內存泄漏,因爲10%空閒是穩定的,它變化爲+/- 2-3%。即使在有2個RAM的電話上(所有其他應用程序關閉),我總是運行少於2個3 MB的免費堆是否有解決方法?
從此[link](http://stackoverflow.com/questions/2630158/detect-application-heap-size-in-android)閱讀代碼來監視您的實際內存使用情況。 – minhaz 2013-03-27 01:31:38
已經做到了,那是我如何計算自由堆空間。 – 2013-03-27 01:42:19