Apple每日资讯■iPhone到底要不要关闭后台程序


iPhone到底要不要关闭后台程序?这问题到现在还是众多纷纭 , 一方认为不关闭后台会造成耗电卡顿;另一派认为iPhone不需要关闭后台app , 不关闭后台app不会造成iPhone耗电 , 反而会经常关闭后台app才会更加耗电!
Apple每日资讯■iPhone到底要不要关闭后台程序
本文插图
那到底是经常关闭 后台App 会不会导致耗电还是省电?这篇直接告诉大家正确答案
iOS 后台运作原理
这问题过去就有外媒写信问过库克 , 最后也没有获得明确答案 , 那时苹果公司软体工程进阶副总裁Craig Federighi只有稍微回应「关闭后台是否会让设备变得更省电」
iPhone 导致耗电 , 多少都会跟后台有点关系 , 稍微说明iOS 程序的寿命周期
Apple每日资讯■iPhone到底要不要关闭后台程序
本文插图
Not running(未运行):程序没启动
Inactive(未激活):程序在前台运行 , 不过没有接收到事件 。 在没有事件处理情况下程序通常停留在这个状态
Active(激活):程序在前台运行而且接收到了事件 。 这也是前台的一个正常的模式
Backgroud(后台):程序在后台而且能执行代码 , 大多数程序进入这个后台后会在在这个状态上停留一会 。 时间到之后会进入挂起状态(Suspended) 。 有的程序经过特殊的请求后可以长期处于Backgroud状态
Suspended(挂起):程序在后台不能执行代码 。 系统会自动把程序变成这个状态而且不会发出通知 。 当挂起时 , 程序还是停留在内存中的 , 当系统内存低时 , 系统就把挂起的程序清除掉 , 为前台程序提供更多的内存
看一下iPhone运行内存状态
图一是刚开机后的内存分布状态
图二是正常使用将近一周 , 没有刻意关闭后台程序的内存分布状态
Apple每日资讯■iPhone到底要不要关闭后台程序
本文插图
【Apple每日资讯■iPhone到底要不要关闭后台程序】可以看出总内存空间4GB(将近)
刚重启后空闲的的空间仅为600MB , 而运行了一周的空闲空间为100MB左右
iOS 系统运行内存总是占满90%以上 , 仅会剩余1xx MB , 在这种情况下 , 就算开启再多App 不从后台关闭 , 都不会出现类似Windows 或Android 延迟卡顿情况 , 主因是iOS 在后台运行内存控管相当优秀 , 用户完全不需要手动释放运行内存 , 更不需要随时注意空闲记忆体剩余多少 , iOS 会自动释放久未执行的App
Apple每日资讯■iPhone到底要不要关闭后台程序
本文插图
当使用者启动App后 , 使用到一半再退回主界面或开启另一款App时 , 前款App会常驻在后台中进入后台模式 , 简单来说就是没在使用的App会呈现冻结 , 依旧会停留在内存中 , 下次要再启动App时 , 就能在最短时间恢复执行 , 也是为什么iOS常驻在后台App在启动速度比起新开启的App来得更快
举例来说 , 大家常用的绿色聊天软件, 切换到后台后 , 再次打开就会迅速的直接进入到程序界面 , 如果从后台关闭重新再开 , 会先看见启动画面等个几秒才会真正进入程序界面
一个是后台模式 , 程序保留在运行内存中;一个是未运行状态 , 重新打开
不关闭后台更省电!?
软件使用完毕后切到后台 , 会进入「后台」和「挂起」阶段 , 不会在后台一直运行 , 更不会造成耗电 。 反而经常习惯将App从后台全部关闭 , 从新开启app会造成更加耗电 , 因为重开App时 , 会从新执行一轮「热启动」 , 调整与占用运行内存 , 处理过程还需要CPU、闪存等硬件配合执行 , 导致设备更耗电
Apple每日资讯■iPhone到底要不要关闭后台程序


推荐阅读