自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

不做強迫癥:Android多任務(wù)機制科普

移動開發(fā) Android
想當(dāng)年,清內(nèi)存的習(xí)慣由來已久。在 Android 還沒出生,我們使用 Windows 時,總巴不得把所有沒有用到的進程關(guān)掉,這樣才不會“占 內(nèi)存”,不會“占 CPU ”,電腦才不會“卡”。(大部分的“安全軟件”就是靠幫用戶在 Windows 上清內(nèi)存,清垃圾而揚名)這算是清內(nèi)存的歷史原因。然而 Android 跟 Windows 相比,是完全不同的內(nèi)存管理機制......

[[114476]]

為什么不需要清內(nèi)存?

想當(dāng)年,清內(nèi)存的習(xí)慣由來已久。在 Android 還沒出生,我們使用 Windows 時,總巴不得把所有沒有用到的進程關(guān)掉,這樣才不會“占 內(nèi)存”,不會“占 CPU ”,電腦才不會“卡”。(大部分的“安全軟件”就是靠幫用戶在 Windows 上清內(nèi)存,清垃圾而揚名)這算是清內(nèi)存的歷史原因。然而 Android 跟 Windows 相比,是完全不同的內(nèi)存管理機制…

背景:

Android 基于 Linux 的內(nèi)核,繼承并改進了 Linux 的內(nèi)存管理機制。

Android 的內(nèi)存管理機制:

  1. 有多少內(nèi)存就用多少,空閑內(nèi)存全部當(dāng)緩存。也就是,當(dāng)一個進程停止活動,Windows 會把它從內(nèi)存中清除,但Android會把進程保留在內(nèi) 存里,這樣下次啟動時就會非???,因為省去了再次從儲存設(shè)備讀取的時間,只有當(dāng)內(nèi)存不足以啟動一個新進程時,Android 才會清除某些駐留在內(nèi)存中停 止活動的進程。
  2. 每個進程以 Java 虛擬機獨立存在,互不干擾。確保 Android 的穩(wěn)定性,正常情況下即使單個進程崩潰,整個系統(tǒng)也不會崩潰,也永遠(yuǎn)沒有內(nèi)存不足的提示出現(xiàn)。

以上,可以解釋 Android 剩余內(nèi)存總是很少的原因。“但是,進程在后臺運行會耗電耗流量的?。?rdquo;這個繼續(xù)解釋……

 Android 的多任務(wù)機制:

當(dāng)進程被切換到后臺時,系統(tǒng)暫停進程。不消耗cpu資源,只在內(nèi)存保留運行狀態(tài),并根據(jù)應(yīng)用本身設(shè)置優(yōu)先級。

七個優(yōu)先級:

  1. 前臺進程。顧名思義,你當(dāng)前屏幕正在顯示的進程。
  2. 可見進程。隨時需要待命的進程,例如隨時需要召喚出來的輸入法。
  3. 主要服務(wù)。系統(tǒng)的必須服務(wù),例如電話。
  4. 次要服務(wù)。與系統(tǒng)關(guān)系密切的服務(wù),例如 Gmail 的郵件推送服務(wù)。
  5. 后臺進程。同樣顧名思義,就是剛剛被你切換到后臺的進程。
  6. 內(nèi)容供應(yīng)節(jié)點。沒有應(yīng)用實體,僅提供內(nèi)容供別的應(yīng)用去用的,比如日歷供應(yīng)節(jié)點,郵件供應(yīng)節(jié)點等。
  7. 空進程。沒有任何東西在運行的進程,有些應(yīng)用在退出后,依然會在進程中駐留一個空進程,這樣的作用是提高該應(yīng)用下次的啟動速度或記錄一些歷史信息.

結(jié)論

綜上,正常的用戶應(yīng)用在退出之后要不就成為后臺進程,要不就成為空進程。這些進程已經(jīng)暫停了運行,不占用 CPU 資源和電量。在內(nèi)存不足,用戶需 要打開另外的應(yīng)用時,就會自動清除掉,所以完全不需要清理內(nèi)存。相反有時清理了內(nèi)存之后系統(tǒng)反而需要用大量的電量和 CPU 去重啟必要的進程。

可是為什么有些應(yīng)用在關(guān)掉了之后仍然會耗費電量和流量呢?***的答案是,這是一個不安分的應(yīng)用。應(yīng)用作者在寫應(yīng)用的時候就為應(yīng)用申請了各種各樣的主 要服務(wù)和次要服務(wù),導(dǎo)致用戶退出后仍然繼續(xù)運行。(所以后臺運行最牢固的就是那些在你下拉通知欄的“XX電池醫(yī)生”和“XX手機助手”。)這種現(xiàn)象在一些 國產(chǎn)應(yīng)用上尤其常見。面對這些亂七八糟的沒良心的應(yīng)用和應(yīng)用作者,果斷把它卸載并沖到臭水溝里面去吧,差評!

責(zé)任編輯:閆佳明 來源: leiphone
相關(guān)推薦

2017-06-19 17:22:20

JavaCode Style持續(xù)交付

2013-08-21 14:23:59

2020-11-19 08:58:00

程序員數(shù)字強迫癥

2020-04-13 16:16:00

JavaScript函數(shù)技術(shù)

2009-08-17 09:38:12

ASP.NET前臺控件

2021-11-23 21:03:47

代碼電腦False

2020-06-04 08:16:56

代碼編碼庫開發(fā)

2011-05-04 09:27:45

系統(tǒng)管理員強迫癥

2020-07-10 09:00:31

硬盤數(shù)據(jù)SSD

2019-08-29 11:30:36

2013-12-12 16:44:25

Lua協(xié)程

2021-12-21 08:12:01

Web JavaScriptCSS

2022-01-14 15:13:36

支付寶App消息“刷子”

2021-11-02 14:35:56

微軟Windows 11Windows

2011-05-31 13:29:40

Android 多線程

2011-08-02 14:48:04

IOS 多任務(wù)

2022-06-08 06:38:00

iPadOS 16SafariiCloud

2023-10-08 13:10:24

2022-01-14 07:46:02

Windows 11操作系統(tǒng)微軟

2012-07-31 09:44:27

Windows Pho
點贊
收藏

51CTO技術(shù)棧公眾號