iOS是伪多任务?

iOS是伪多任务?

      Android系统原生就支持多任务,而iOS系统是从4开始的。它的多任务并不是传统意义上的多任务,不是任何应用进程都可以在后台自由运行。真正做到支持多任务的只有苹果Safari和Mail,很多苹果亲生的应用也都并不支持。

      对于第三方应用,可以开放的后台运行接口只有音频播放(如QQ音乐)、地理位置检测(如谷歌地图)和网络电话(如Skype)等。

      在iOS中,单击Home键可以从应用中退回桌面。之前运行的应用并不是被关闭了,而是被暂时“冻结”。已经分配给它的资源仍然没有收回,它是在运行中 的。当你重新点击应用,就会立刻进入,并恢复退出之前的状态。这就是苹果的快速切换应用功能(fast app switching)

      苹果官网多任务解释

      双击Home键可以激活屏幕下方的夹层,后台运行的应用都在这里。但并不是所有在这里出现的应用都是后台运行的。

      iOS的多任务可以分为三种:

      1、保持退出时状态

      这种多任务只是一种看起来像多任务的单任务,当按下Home键时,程序会保持状态。待到下次呼出时便恢复保存时的状态,让人看起来好像没有退出过。就好像玩PSP上游戏的临时存档一样,退出游戏之前存一下,再次进入并读档后,这个临时存档就消失了。

      2、有限多任务

      在这种多任务下,按下Home键,程序会保存到内存中,可以执行一些系统允许的进程,如音乐播放和下载等。这种多任务更快,但会占用内存。

      3、传统意义多任务

      Safari和Mail就是这种多任务。这种多任务可以让程序在切换到后台时,无限制的做出动作。对于移动设备来说,如果不限制这样的行为,任由程序在后台随意执行,电量很快就会被用光。

      有几种情况下,应用是真正完全退出了:1、系统为节省内存而自动终止某程序;2、用户手动长按屏幕下方多任务栏中的应用并关闭;3、尚没为iOS系统重新编译过的第三方应用(如更新之前的ONE|一个),这种应用无法被冻结,所以退出即终止。

      能够在后台运行的应用有限

      之所以iOS系统会给人伪多任务的印象,是因为苹果处于延迟续航时间等考虑,强制仅有少数几种应用能够被授权在后台运行。大多数应用在退出后会被挂起,挂起后的10秒钟内,仍然占用着原来的资源,用以一些善后工作。

      当后台的应用过多,运行内存不够时,系统会自动结束认为最没用的进程,或是运行最早的那个进程。而那些被允许在后台允许的应用,系统会通过专门的API给予其永久后台权限,直到状态结束或用户主动关闭。

      从多任务的定义上来看,iOS系统可以进行多任务处理,但又不完全符合传统意义的多任务。它需要挂起前一个进程才能将操作分配给下一个进程。但不管怎样,它是支持多任务操作的。

      真正的后台是要付出代价的


    注意:(内容是从其他地方copy过来的,仅供参考,感谢原作者)



  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值