為什麼使用服務與程序的優先順序

2022-09-17 09:36:14 字數 807 閱讀 6100

服務: 長期後台執行的沒有介面的元件

android應用:什麼地方需要用到服務?

天氣預報:後台的連線伺服器的邏輯,每隔一段時間 獲取最新的天氣資訊

**顯示:後台的連線伺服器的邏輯,每隔一段時間 獲取最新的**資訊

new thread(){}.start(); 子執行緒沒有介面,也是長期後台執行的。

android系統程序管理是按照一定的規則的:

1.應用程式一旦被開啟 通常情況下關閉(清空任務棧)後程序不會停止。方面下一次快速啟動。

但是會帶來記憶體不足的問題。

2.android系統有一套 記憶體清理機制。 按照優先順序去**系統的記憶體。

程序分為5個等級的優先順序:(從高到低)

1.foreground process 前台程序 使用者正在玩的應用程式對應的程序

2.visible process 可視程序 使用者仍然可以看到這個程序的介面。

3.service process服務程序 應用程式有乙個服務元件在後台執行。

4.background process 後台程序 應用程式沒有服務在執行 並且最小化 (activity onstop)

5.empty process 空程序 沒有任何執行的activity, 任務棧空了

長期後台執行的元件, 不要在activity開啟子執行緒。

應該是建立服務,在服務裡面開啟子執行緒。

服務的目的:

1.長期後台執行。

2.提高程序的優先順序,系統不容易**掉程序,即便**了,記憶體充足的時候,把程序重新建立。

android 安卓程序優先順序 為什麼使用服務

應用程式 一組元件 activity service provider receiver 的集合 一般情況下,乙個應用程式對應乙個程序 一般情況下,關閉掉應用,關閉掉所有介面,應用程式的程序還在後台執行 安卓系統採用一組策略幫助我們管理程序 程序按照優先順序分為不同的等級 1.前台程序,使用者可以看...

程序優先順序與後台程序

ps le 可以檢視到程序優先順序的兩個決定字段。pri和ni,pri是決定程序優先順序的字段,pri pri ni,但是pri我們手動改不了,我們可以通過修改ni來間接影響pri,ni修改範圍是 20 19。普通使用者只能修改正數和0範圍,只有超級使用者可以修改所有範圍。nice n 1 serv...

Linux 程序排程與優先順序

靜態優先順序,取值100 139,對非實時程序有效,通過nice系統呼叫來進行修改 rt priority 實時優先順序,取值0 99,只對實時程序有效 normal prio 歸一化優先順序,其值取決於靜態優先順序和排程策略 prio 動態優先順序,取值0 139,排程器最終使用 rt prior...