Android 中的進程

      Android 中的進程按照重要性從高到低一共有五個級別:

  • 前臺進程
    前臺進程是用戶當前正在使用的進程。只有一些前臺進程可以在任何時候都存在。他們是最後一個被結束的,當內存低到根本連他們都不能運行的時候。一般來說, 在這種情況下,設備會進行內存調度,中止一些前臺進程來保持對用戶交互的響應。
  • 可見進程
    可見進程不包含前臺的組件但是會在屏幕上顯示一個可見的進程是的重要程度很高,除非前臺進程需要獲取它的資源,不然不會被中止。
  • 服務進程
    運行着一個通過startService() 方法啓動的service,這個service不屬於上面提到的2種更高重要性的。service所在的進程雖然對用戶不是直接可見的,但是他們執行了用戶非常關注的任務(比如播放mp3,從網絡下載數據)。只要前臺進程和可見進程有足夠的內存,系統不會回收他們。
  • 後臺進程
    運行着一個對用戶不可見的activity(調用過 onStop() 方法).這些進程對用戶體驗沒有直接的影響,可以在服務進程、可見進程、前臺進 程需要內存的時候回收。通常,系統中會有很多不可見進程在運行,他們被保存在LRU (least recently used) 列表中,以便內存不足的時候被第一時間回收。如果一個activity正 確的執行了它的生命週期,關閉這個進程對於用戶體驗沒有太大的影響。
  • 空進程
    未運行任何程序組件。運行這些進程的唯一原因是作爲一個緩存,縮短下次程序需要重新使用的啓動時間。系統經常中止這些進程,這樣可以調節程序緩存和系統緩存的平衡。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章