Android程序優先順序

2021-08-27 16:29:24 字數 932 閱讀 7968

程序間的優先順序關係

執行耗時操作的程序選擇

參考資料

android在記憶體緊張的時候會對程序採取一定的策略來終止程序,而這些策略是往往是根據程序的優先順序來出處理的

優先順序由高到低排列

指正在與使用者進行互動的應用程序,該程序數量較少,是最高優先順序程序,系統一般不會終止該程序,而判斷為前台程序的因素有以下這些

能被使用者看到,但不能根據根據使用者的動作做出相應的反饋,

因素

沒有可見介面仍在不斷的執行任務的程序,除非在可視程序和前台程序緊缺資源(如:記憶體資源)才會被終止

因素

通常系統中有大量的後台程序,終止後台程序不會影響使用者體驗,隨時為優先順序更高的程序騰出資源而被終止,優先**長時間沒用使用過的程序。

因素

為提高整體系統效能,系統會儲存已經完成生命週期的應用程式 ,存在與記憶體當中,也就是快取,為下次的啟動更加迅速而設計。通常會被定期地終止

由於元件之間的依賴性, 程序的優先順序有可能被提高

當程序a服務於程序b時,程序a的優先順序不能低於程序b,但按照優先順序的規則來算,程序a的優先順序會低於程序b

如:程序a中的content provider為程序b提供服務,或者程序a中有乙個service與程序b中的元件程序繫結

當執行耗時操作時(如:獲取網路資料),我們需要乙個新的程序來執行該操作。我們需要考慮是選擇通過子執行緒還是service來執行。如果使用子執行緒的話,如果當前的activity變成不可見的話,程序便會成為後台程序。但如果選擇使用service時,則成為服務程序。而後台程序會隨時被終止。所以需要考慮業務的需求來採取不同的策略。

android系統中的程序管理:程序的優先順序

android程序的優先順序

android 程序優先順序

程序 process 的優先順序 從高到低 前台程序 foreground process 1 當前使用者操作的activity所在程序 2 繫結了當前使用者操作的activity的service所在程序 3 呼叫了startforeground 的service 1 提高service優先順序的方...

Android程序優先順序

android將程序的優先順序分為5個層次,按照優先順序由高到低排列如下 前台程序 foreground process 它表明使用者正在與該程序進行互動操作,android系統依據下面的條件來將乙個程序標記為前台程序 可見程序 visible process 它表明雖然該程序沒有持有任何前台元件,...

Android程序優先順序

在安卓系統中 當系統記憶體不足時,android系統將根據程序的優先順序選擇殺死一些不太重要的程序,優先順序低的先殺死。程序優先順序從高到低如下 前台程序 處於正在與使用者互動的activity 與前台activity繫結的service 呼叫了startforeground 方法的service ...