android - 何故现在安卓手机的后台应用,占用内存如此多,那么安卓系统调度内存的总原则是什么?
迷茫
迷茫 2017-04-17 17:33:04
0
2
689

描述问题

从来不杀后台进程,因为自己信奉缓存这一套

但是也惊异于现在安卓应用的内存占用之大,比如「开机不久后内存剩下500M左右」,但我显然是会不断缓存后台应用的

故对安卓系统的内存调度原则产生了兴趣

上下文环境

国产X米手机5-3GRAM  (常用应用20几个)

习惯:
1. 从来不杀后台进程(坚持「内存不用就是浪费」的道理)

重现

普遍现象

已经尝试哪些方法仍然没有解决(附上相关链接)

根据自己对Linux的些许了解,自己的模糊认识如下:

  1. 有多少用多少, 最好全部用上

  2. 新进程加进来,踢掉闲置进程

问题简化

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

全部回覆(2)
Peter_Zhu

其實內存並不能分析後台運行著多少內存,也不是手機卡不卡的主要原因,你要去比較一下iOS裡的內存佔用,一點都不比Android的少,何況iPhone本身內存就少。
手機的耗電量集中在CPU上,記憶體不管你用多少,都是一樣的消耗。
關於對後台應用的調度,Android和iOS機制都差不多,往滿了塞,不夠了就清後台程式騰空間。而程式有帶有優先級,優先順序低的會先選擇被殺。
區別在於Android和iOS對後台程式的機制不同,iOS只允許很少一部分的程式能夠常駐後台,而Android則沒有任何限制,任由程式侵占後台。特別是Google沒有進入國內,國內的Android市場一片混亂,也沒有任何一家市場去約束App的行為,所以又推動了Android應用程式從設計上就肆意妄為。有的App即使本身沒有常駐後台的需求,也非弄點花樣非要常駐後台。長此以往,手機長時間處於高負載狀態,也導致了Android機器越用越卡。

刘奇

1,app會互相喚醒+後台自啟+透過系統事件觸發防止自己被kill掉
2,快取越積越多,有時候不是卸載掉app就能完全清除該app的快取
3,app設計上的臃腫,沒有做效能優化
至於安卓系統調度記憶體的總原則,不是很清楚

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板