如何高效率管理android的剩余內存

時(shí)間:2022-07-03 04:49:55 管理 我要投稿
  • 相關(guān)推薦

如何高效率管理android的剩余內存

  其實(shí)大家不用那么在意android手機剩余內存的大小。很多人都是把使用其他系統的習慣帶到了android手機上,不是所有的智能手機系統都一樣的。android大多數應用沒(méi)有退出的設計其實(shí)是有道理的,這和系統對進(jìn)程的調度機制有關(guān)系。如果你知道java,就能更清楚這機制了。其實(shí)和java的垃圾回收機制類(lèi)似,系統有一個(gè)規則來(lái)回收內存。進(jìn)行內存調度有個(gè)閥值,只有低于這個(gè)值系統才會(huì )按一個(gè)列表來(lái)關(guān)閉用戶(hù)不需要的東西。當然這個(gè)值默認設置得很小,所以你會(huì )看到內存老在很少的數值徘徊。但事實(shí)上他并不影響速度。相反加快了下次啟動(dòng)應用的速度。這本來(lái)也是android的優(yōu)勢之一,如果人為去關(guān)閉進(jìn)程,沒(méi)有太大必要。特別是自動(dòng)關(guān)進(jìn)程的軟件。

  可能有人會(huì )說(shuō)了,那為什么內存少的時(shí)候運行大型程序會(huì )慢呢?其實(shí)很簡(jiǎn)單,在內存剩余不多時(shí)打開(kāi)大型程序,會(huì )觸發(fā)系統自身的調進(jìn)程調度策略,這是十分消耗系統資源的操作,特別是在一個(gè)程序頻繁向系統申請內存的時(shí)候。這種情況下系統并不會(huì )關(guān)閉所有打開(kāi)的進(jìn)程,而是選擇性關(guān)閉,頻繁的調度自然會(huì )拖慢系統。

  那么,進(jìn)程管理軟件到底還有存在的價(jià)值嗎?其實(shí)還是有的,在運行大型程序之前,你可以手動(dòng)關(guān)閉一些進(jìn)程釋放內存,可以顯著(zhù)的提高運行速度。但一些小程序,完全可交由系統自己管理。很多朋友還有個(gè)疑問(wèn),如果不關(guān)程序是不是會(huì )更耗電?這里也解釋一下,android的應用在被切換到后臺時(shí),它其實(shí)已經(jīng)被暫停了,并不會(huì )消耗cpu資源,只保留了運行狀態(tài)。所以為什么有的程序切出去重新進(jìn)入,還會(huì )到主界面。但是,一個(gè)程序如果想要在后臺處理些東西,如音樂(lè )播放,它就會(huì )開(kāi)啟一個(gè)服務(wù),服務(wù)可在后臺持續運行,所以在后臺耗電的也只有帶服務(wù)的應用了。這個(gè)在進(jìn)程管理軟件里能看到,名字是service。所以沒(méi)有帶服務(wù)的應用在后臺是完全不耗電的,沒(méi)有必要關(guān)閉。這種設計本來(lái)就是一個(gè)非常好的設計,下次啟動(dòng)程序時(shí),會(huì )更快,因為不需要讀取界面資源,何必要關(guān)掉他們抹殺這個(gè)android的優(yōu)點(diǎn)呢?

  還有一點(diǎn),為什么android應用看起來(lái)那么耗內存?大家知道,android上的應用是java,當然需要虛擬機,而android上的應用是帶有獨立虛擬機的,也就是每開(kāi)一個(gè)應用就會(huì )打開(kāi)一個(gè)獨立的虛擬機。這樣設計的原因是可以避免虛擬機崩潰導致整個(gè)系統崩潰,但代價(jià)就是需要更多內存。

  至于為什么開(kāi)了大程序或者開(kāi)了好幾個(gè)程序之后切換會(huì )變慢,具體分析如下:

  已經(jīng)開(kāi)啟了一個(gè)大程序,占用70%內存,如果再想運行一個(gè)程序,此時(shí)還需要50%的內存,則就需要一個(gè)從大程序占用的內存中釋放或者壓縮的過(guò)程,所以表現出來(lái)的就是慢一會(huì )兒。

  已經(jīng)開(kāi)啟了幾個(gè)程序共占用內存80%,運行新程序時(shí)又需要20%的內存,系統內存因為沒(méi)見(jiàn)過(guò)剩余0的時(shí)候,也就是應該剩一部分空閑內存,那么就需要從之前開(kāi)啟的這幾個(gè)程序中選擇一個(gè)或者幾個(gè)來(lái)關(guān)閉,這一過(guò)程也需要耗費系統資源,所以會(huì )慢一會(huì )兒。也就是說(shuō)你手動(dòng)去結束程序的時(shí)候,就是替系統在釋放內存,就算你不去結束,在需要內存的時(shí)候系統也會(huì )自動(dòng)結束程序釋放內存。

  不在后臺運行的程序(沒(méi)服務(wù)的),即使不結束也不會(huì )耗電。在后臺運行的(有服務(wù)的)程序,如一些播放器或實(shí)時(shí)監控的軟件,自然會(huì )耗電。這就說(shuō)明結束進(jìn)程并不是沒(méi)用,我們只需要看哪個(gè)帶服務(wù)耗電哪個(gè)程序后臺一直在運行,看服務(wù)就能看出來(lái),這樣的軟件如果用不到的時(shí)候就結束了吧。

  以QQ舉例,正常的退出,會(huì )在進(jìn)程管理里留下qq的運行過(guò)的狀態(tài),但不耗電不占 cpu,如果你只是切換出去(按房子鍵而不是退出)那么自然會(huì )耗電,因為程序還在運行,QQ還在線(xiàn)呢。

  這里就有個(gè)要注意的地方了,雖然房子鍵和那個(gè)返回鍵都可以將程序切換出去,但是兩者的效果差異是很大的,返回鍵可以視作程序已經(jīng)退出了,而按房子鍵,則是將程序切換到了后臺來(lái)運行,軟件并沒(méi)有退出哦!

  以上這些設計都是為了確保了android的穩定性,正常情況下最多單個(gè)程序崩潰,但整個(gè)系統不會(huì )崩潰,也永遠沒(méi)有內存不足的提示出現。大家可能是被windows毒害得太深了,總想保留更多的內存,但實(shí)際上這并不一定會(huì )提升速度,相反卻喪失了程序啟動(dòng)快的這一系統特色,得不償失。大家不妨換種觀(guān)念習慣來(lái)使用android系統。

【如何高效率管理android的剩余內存】相關(guān)文章:

生育保險剩余款如何入賬07-13

如何面試 Android 工程師?07-13

2016年android就業(yè)前景如何07-03

年假中的剩余天數如何算的?07-10

華為Honor固件升級時(shí)提示SD卡剩余內存不足,請整理內存什么意思呢?07-11

如何評價(jià)諾基亞正式加入 Android 陣營(yíng)?07-12

辭職后剩余的存休如何計算工資?07-11

學(xué)Android開(kāi)發(fā)的前途和就業(yè)前景如何03-24

android開(kāi)發(fā)工程師工資待遇如何?07-11

蘋(píng)果電腦變卡如何清理內存07-02

99久久精品免费看国产一区二区三区|baoyu135国产精品t|40分钟97精品国产最大网站|久久综合丝袜日本网|欧美videosdesexo肥婆