久久这里只有精品青草_久久久久久久被弄到高潮_一级特黄大片欧美久久久_国产三級精品专区

  • 您的位置:玩機技巧

    安卓手機后臺運行機制

    2013-06-14 14:48:25作者:彭藝萍 來源:


    Andriod是基于Linux系統(tǒng)開發(fā)出來的,這點非常的重要,因為我相信有很多人,甚

    至一些高手會忽視這一點而陷入了一個誤區(qū),什么誤區(qū)呢?就是手動關(guān)閉成尋,追求更

    大的剩余內(nèi)存。
         我們已經(jīng)習(xí)慣Windows的系統(tǒng),習(xí)慣了空余內(nèi)存更大運行更快的概念。大家在使用

    Andriod手機時也會保持著這個概念。常常手動關(guān)閉程序以節(jié)約內(nèi)存。其實大可不必。作

    為Andriod系統(tǒng),或者說Linux系統(tǒng),它與Windows系統(tǒng)是兩個完全不同的系統(tǒng),所以他們

    在內(nèi)存上的看待是完全不一樣的。
    Android大多應(yīng)用沒有退出的設(shè)計其實是有道理的,這和系統(tǒng)對進程的調(diào)度機制有關(guān)

    系。如果大家知道Java的話,就能更清楚這機制了,因為Java本身有個垃圾****機制。

    和Java的垃圾****機制類似,Andriod系統(tǒng)有一個規(guī)則來****內(nèi)存。進行內(nèi)存調(diào)度有個閥

    值,只有低于這個值系統(tǒng)才會按一個列表來關(guān)閉用戶不需要的東西。當(dāng)然這個值默認(rèn)設(shè)

    置得很小,所以你會看到內(nèi)存老在很少的數(shù)值徘徊。但事實上它并不影響速度。相反加

    快了下次啟動應(yīng)用的速度。這本來就是Android標(biāo)榜的優(yōu)勢之一。如果人為去關(guān)閉進程,

    沒有太大必要,特別是使用自動關(guān)進程的軟件。(這就是我所說的為什么不需要手動關(guān)

    閉進程了。而且我相信作為一個穩(wěn)定的系統(tǒng),本身各個數(shù)值的設(shè)置應(yīng)該已經(jīng)是最均衡的

    ,所以沒有必要一味追求數(shù)值的大小,夠用即可。)
         那大家可能會問了,那為什么內(nèi)存少的時候運行大型程序會慢呢?這其實很簡單,

    在內(nèi)存剩余不多時打開大型程序,會觸發(fā)系統(tǒng)自身的調(diào)進程調(diào)度策略,這是十分消耗系

    統(tǒng)資源的操作,特別是在一個程序頻繁向系統(tǒng)申請內(nèi)存的時候。這種情況下系統(tǒng)并不會

    關(guān)閉所有打開的進程,而是選擇性關(guān)閉,頻繁的調(diào)度自然會拖慢系統(tǒng)。(這就是為什么

    大型程序剛開始啟動時很慢,但到后來逐漸恢復(fù)正常速度的原因。當(dāng)然調(diào)整的時間還要

    看機子的好壞。)
          那么,進程管理軟件有無必要呢?有必要的。就是在運行大型程序之前,你可以手

    動關(guān)閉一些進程釋放內(nèi)存,可以顯著的提高運行速度。但一些小程序,完全可交由系統(tǒng)

    自己管理。
          有人可能又會問了,如果不關(guān)程序是不是會更耗電。還有網(wǎng)友關(guān)注會不會費流量。

    我說說Android后臺的原理,大家就明白了。Android的應(yīng)用在被切換到后臺時,它其實

    已經(jīng)被暫停了,并不會消耗cpu資源,只保留了運行狀態(tài),耗電不大不費流量。(這個就

    是為什么我們把有的程序切出去后,再重進該程序時,還是會到程序的主界面)。但是

    ,一個程序如果想要在后臺處理些東西,如音樂播放,它就會開啟一個服務(wù)。服務(wù)可在

    后臺持續(xù)運行,所以在后臺耗電的也只有帶服務(wù)的應(yīng)用了。這個在進程管理軟件里能看

    到,標(biāo)簽是service。至于廣播什么的我就不涉及了。所以沒有帶服務(wù)的應(yīng)用在后臺是完

    全不耗電的,沒有必要關(guān)閉。這種設(shè)計本來就是一個非常好的設(shè)計,下次啟動程序時,

    會更快,因為不需要讀取界面資源,何必要關(guān)掉他們抹殺這個Android的優(yōu)點呢?
          還有一個,為什么Android一個應(yīng)用看起來那么耗內(nèi)存。這是因為,Android上的應(yīng)

    用是java,當(dāng)然需要虛擬機,而Android上的應(yīng)用是帶有獨立虛擬機的,也就是每開一個

    應(yīng)用就會打開一個獨立的虛擬機。這樣設(shè)計的原因是可以避免虛擬機崩潰導(dǎo)致整個系統(tǒng)

    崩潰,但代價就是需要更多內(nèi)存。(所以大家會發(fā)現(xiàn),其實正常使用Andriod系統(tǒng)的話,

    很少死機的,當(dāng)然換的固件不好的情況除外啊。)
          以上這些設(shè)計確保了Android的穩(wěn)定性,正常情況下最多單個程序崩潰,但整個系

    統(tǒng)不會崩潰,也永遠(yuǎn)沒有內(nèi)存不足的提示出現(xiàn)。(大家可能是用Windows用習(xí)慣了,被內(nèi)

    存的概念毒害得太深了,總想保留更多的內(nèi)存,但實際上這并不一定會提升速度,相反

    卻喪失了程序啟動快的這一系統(tǒng)特色,很沒必要。)
          我原先使用時也下載了進程管理軟件,后來發(fā)現(xiàn)其實感覺區(qū)別不大(因為我玩大型

    游戲比較少),所以我現(xiàn)在非常信任Andriod自我調(diào)節(jié)能力。
     

    更多
    當(dāng)前共有0人發(fā)表了評論.
    • 驗證碼:
    精彩圖文
    熱點文章