Android的六大程序

2021-09-27 08:39:03 字數 1360 閱讀 8421

目前正在螢幕上顯示的程序和一些系統程序。舉例來說,dialer storage,google search等系統程序就是前台程序;再舉例來說,當你執行乙個程式,如瀏覽器,當瀏覽器介面在前台顯示時,瀏覽器屬於前台程序(foreground),但一旦你按home回到主介面,瀏覽器就變成了後台程式(background)。我們最不希望終止的程序就是前台程序。

可見程序是一些不再前台,但使用者依然可見的程序,舉個例來說:widget、輸入法等,都屬於visible。這部分程序雖然不在前台,但與我們的使用也密切相關,我們也不希望它們被終止(你肯定不希望時鐘、天氣,新聞等widget被終止,那它們將無法同步,你也不希望輸入法被終止,否則你每次輸入時都需要重新啟動輸入法)

目前正在執行的一些服務(主要服務,如撥號等,是不可能被程序管理終止的,故這裡只談次要服務),舉例來說:谷歌企業套件,gmail內部儲存,聯絡人內部儲存等。這部分服務雖然屬於次要服務,但很一些系統功能依然息息相關,我們時常需要用到它們,所以也太希望他們被終止

雖然作者用了hidden這個詞,但實際即是後台程序(background),就是我們通常意義上理解的啟動後被切換到後台的程序,如瀏覽器,閱讀器等。當程式顯示在螢幕上時,他所執行的程序即為前台程序(foreground),一旦我們按home返回主介面(注意是按 home,不是按back),程式就駐留在後台,成為後台程序(background)。後台程序的管理策略有多種:有較為積極的方式,一旦程式到達後台立即終止,這種方式會提高程式的執行速度,但無法加速程式的再次啟動;也有較消極的方式,盡可能多的保留後台程式,雖然可能會影響到單個程式的執行速度,但在再次啟動已啟動的程式時,速度會有所提公升。這裡就需要使用者根據自己的使用習慣找到乙個平衡點

沒有程式實體,進提供內容供別的程式去用的,比如日曆**節點,郵件**節點等。在終止程序時,這類程式應該有較高的優先權

沒有任何東西在內執行的程序,有些程式,比如bte,在程式退出後,依然會在程序中駐留乙個空程序,這個程序裡沒有任何資料在執行,作用往往是提高該程式下次的啟動速度或者記錄程式的一些歷史資訊。這部分程序無疑是應該最先終止的。

簡單來說,就是選擇退出程式時,並不是完全退出程式,該程式仍然會在後台駐留乙個程序,以便下次更快的開啟。那什麼時候完全關閉該程式呢?這取決於該程式的型別(就是上面講的那幾個型別)。系統會給每個型別的程式乙個記憶體值閾(閥門),也就是說當執行記憶體低於某個值時,系統會自動按照開啟的先後順序來關閉該型別的程式。例如,當運存小於24mb時,系統才會自動關閉空程序這一型別的程式,釋放出更多的記憶體來供新程式使用,已保證新開程式的正常執行。

綜上所述,我們不難看出,很多時候我們沒必要過多的去關注系統的空閒記憶體(ram)是多少,也沒必要特意的去殺掉後台程式,因為系統會自動分配記憶體,以保證新程式的執行,特殊情況除外,比如你馬上就要開乙個非常大的遊戲,需要更多的記憶體,這個時候就可以手動殺掉一些後台程式,以保證遊戲的流暢。

Android六大類程序介紹

前台程序 foreground 目前正在螢幕上顯示的程序和一些系統程序。舉例來說,dialer storage,google search等系統程序就是前台程序 再舉例來說,當你執行乙個程式,如瀏覽器,當瀏覽器介面在前台顯示時,瀏覽器屬於前台程序 foreground 但一旦你按home回到主介面,...

liunx六大程序間通訊方式

liunx六大程序間通訊方式 管道,訊息佇列,共享記憶體,訊號量,socket,訊號,檔案鎖 1,管道 1,匿名管道 2,命名管道 3,特點 1,面向位元組流,2,生命週期隨核心 3,自帶同步互斥機制。4,半雙工,單向通訊,兩個管道實現雙向通訊。2,訊息佇列 1,概念 在核心中建立一佇列,佇列中每個...

PL的六大秘訣

pl在大多數情況下在 member 中更具有親和力,更容易獲得尊敬。作為一位成功的 pl的六 則 1 激勵 不管member 完成一項簡單還是複雜的工作,都不要忘了表示一下讚許。在 member 完成一項超出你預想的工作時,更要鄭重地發一封表揚信。2 坦白 面對member 當你沒有弄懂問題的時候,...