最新回答 / 慕絲5395730
當(dāng)前只有一個(gè)activity 運(yùn)行activity使用了110個(gè)array對象? 如果開啟一個(gè)activity array數(shù)值增長 那么在關(guān)閉的時(shí)候就會(huì)對應(yīng)關(guān)閉新開啟的array對象,但是由于內(nèi)存泄漏導(dǎo)致新開啟的activity被Thread引用關(guān)閉不了 所以其中的array對象會(huì)一直增加
最新回答 / 慕慕4264866
老師講的不錯(cuò),代碼如果現(xiàn)場敲估計(jì)效果會(huì)更好。。。
最新回答 / qq_幸??蚠0
官方的LruCache是維護(hù)一個(gè)隊(duì)列,每次被使用到的都放到隊(duì)頭,隊(duì)尾那個(gè)就是最少使用的,思路供你參考。
2017-12-27
最新回答 / 慕瓜4747088
我不是老師哈,但我可以給你簡單的聊一下。虛擬機(jī)的內(nèi)存不是說一上來就給你分多少,然后就不變了,是會(huì)根據(jù)程序的需要變化的。你可以多多的寫幾個(gè)APP然后run.totalMemory();看看每個(gè)的總內(nèi)存,肯定都是在變化的。這個(gè)所謂的虛擬機(jī),說白了也就是操作系統(tǒng)的一個(gè)進(jìn)程而已,你通過任務(wù)查看器看看進(jìn)程,有哪個(gè)進(jìn)程的內(nèi)存是一直不變化的?。肯到y(tǒng)分配給進(jìn)程的內(nèi)存肯定是動(dòng)態(tài)的,記住“隨用隨取”四個(gè)字就好了
最贊回答 / 初學(xué)CC
這里應(yīng)該只是模擬gc沒有對它進(jìn)行回收
最新回答 / qq_你最ing_0
gc回收不是你控制的,在最后的那個(gè)地方回收了,所以變小了,中間的是因?yàn)檫€沒有回收
最新回答 / 攻城獅ZSP
hashMap默認(rèn)容量16,裝載因子0.75,超過裝載因子容量自動(dòng)翻倍,這個(gè)過程要重組數(shù)組結(jié)構(gòu),比較費(fèi)時(shí)和費(fèi)內(nèi)存。所以如果動(dòng)態(tài)加載大量數(shù)據(jù)時(shí)要注意。但查找數(shù)據(jù)正常時(shí)快于以下兩個(gè),因?yàn)閔ash是直接定位,而下面兩個(gè)是二分法查找。所以,如果是裝載靜態(tài)字典,繼續(xù)用HashMap。滿足下面兩個(gè)條件我們可以使用SparseArray代替HashMap:數(shù)據(jù)量不大,最好在千級(jí)以內(nèi)key必須為int類型,這中情況下的HashMap可以用SparseArray代替:SparseArray和ArrayMap都差不多,使用哪...
2017-03-08