IT小能手 影视后期
电视民工 资深站长

科普:安卓的多任务机制

为什么不需要清内存?

想当年,清内存的习惯由来已久。在Android还没出生,我们使用Windows时,总巴不得把所有没有用到的进程关掉,这样才不会“占内存”,不会“占CPU”,电脑才不会“卡”。(大部分的“安全软件”就是靠帮用户在Windows上清内存,清垃圾而扬名)这算是清内存的历史原因。然而Android跟Windows相比,是完全不同的内存管理机制

20140610_180341_871

背景:

Android基于Linux的内核,继承并改进了Linux的内存管理机制。

Android的内存管理机制:

有多少内存就用多少,空闲内存全部当缓存。也就是,当一个进程停止活动,Windows会把它从内存中清除,但Android会把进程保留在内存里,这样下次启动时就会非常快,因为省去了再次从储存设备读取的时间,只有当内存不足以启动一个新进程时,Android才会清除某些驻留在内存中停止活动的进程。

每个进程以Java虚拟机独立存在,互不干扰。确保Android的稳定性,正常情况下即使单个进程崩溃,整个系统也不会崩溃,也永远没有内存不足的提示出现。

以上,可以解释Android剩余内存总是很少的原因。“但是,进程在后台运行会耗电耗流量的啊?”这个继续解释……

Android的多任务机制:

当进程被切换到后台时,系统暂停进程。不消耗cpu资源,只在内存保留运行状态,并根据应用本身设置优先级。

七个优先级:

前台进程。顾名思义,你当前屏幕正在显示的进程。

可见进程。随时需要待命的进程,例如随时需要召唤出来的输入法。

主要服务。系统的必须服务,例如电话。

次要服务。与系统关系密切的服务,例如Gmail的邮件推送服务。

后台进程。同样顾名思义,就是刚刚被你切换到后台的进程。

内容供应节点。没有应用实体,仅提供内容供别的应用去用的,比如日历供应节点,邮件供应节点等。

空进程。没有任何东西在运行的进程,有些应用在退出后,依然会在进程中驻留一个空进程,这样的作用是提高该应用下次的启动速度或记录一些历史信息.

结论

综上,正常的用户应用在退出之后要不就成为后台进程,要不就成为空进程。这些进程已经暂停了运行,不占用CPU资源和电量。在内存不足,用户需要打开另外的应用时,就会自动清除掉,所以完全不需要清理内存。相反有时清理了内存之后系统反而需要用大量的电量和CPU去重启必要的进程。

可是为什么有些应用在关掉了之后仍然会耗费电量和流量呢?唯一的答案是,这是一个不安分的应用。应用作者在写应用的时候就为应用申请了各种各样的主要服务和次要服务,导致用户退出后仍然继续运行。这种现象在一些国产应用上尤其常见。面对这些乱七八糟的没良心的应用和应用作者,果断把它卸载并冲到臭水沟里面去吧,差评!

 收藏 (0) 打赏

您可以选择一种方式打赏本站

支付宝扫一扫打赏

微信钱包扫描打赏

1、本站名称:LonHowe Blog
2、本站永久网址:https://lonhowe.cn
3、本站部分文章内容可能来源于网络(除特别注明原创外),仅供大家学习与参考,如需转载请注明出处。如有侵权,请给我留言联系我们进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布任何违法的相关信息,访客如发现请给我留言向我们举报,同时我们会保留相关记录,必要时上报相关部门。
6、本站部分文章存在时效性,若有错误或已失效,请给我留言联系我们,我们会第一时间更新。
文章名称:《科普:安卓的多任务机制》
文章链接:https://lonhowe.cn/2326.html
分享到: 生成海报
一个爱折腾的狮子座少年。

热门文章

评论 抢沙发

  • QQ号
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

IT、数码、科技、资源、教程、建站、站长、源码、生活、杂谈

关于本站服务条款
切换注册

登录

点击按钮进行验证

忘记密码 ?

您也可以使用第三方帐号快捷登录

切换登录

注册

我们将发送一封验证邮件至你的邮箱, 请正确填写以完成账号注册和激活

点击按钮进行验证