发件人:

首先,让我们了解ios中所谓的“后台进程”是怎么回事吗?

让我尽可能的清楚: iOS多任务栏不包含“所有正在运行的应用程序的列表”. 它包含“最近使用的应用程序列表”. 用户无需在iOS上管理后台任务.

首先,我们必须弄清楚iOS中所谓的“驻留在后台”不是指“正在执行的程序”,而是“最近使用的程序”. 另请参阅Apple的知识库文章:

按两次“主页”按钮后,将显示“最近使用的应用程序”,因此不要将其视为Mac OS X中Command + Tab显示的开关程序栏. 您可以尝试先关闭iPhone,然后再打开,然后按两次“主页”按钮. 您应该发现以前的程序仍然在那里,因为它实际上是您最近使用过的程序的历史记录,或您浏览器中的浏览历史记录. )

如果您一个接一个地进行“背景移除”程序,就如同一个一个地删除浏览历史记录中的项目一样,这没有什么意义(除非您不希望其他人看到您拥有什么)程序,或者想消磨时间安卓对比ios,太无聊了),将无助于力量或记忆力.

iOS的多任务处理实际上非常聪明. 系统将自动挂起在后台运行的程序. 必要时,它还将挂起已挂起的程序(注意: “已挂起的程序”并不意味着关闭该程序. 它是指从前台到后台的程序. 该程序并没有真正在后台运行. 请不要混淆它与结束程序一起使用. )从内存中删除. 因此,iOS设备的用户无需担心如何管理这些正在运行或未运行的程序,即使它们安全且易于播放!

通常,所有程序进入后台后都有5秒钟的执行缓冲时间,有些程序可以延长到10分钟(这些当然是开发人员在设计和提交程序时决定并声明的);

因此,在按下“主页”按钮后,原始程序将返回到后台. 如果它具有执行该操作的额外背景,iOS仍将其挂起超过10分钟;所以不用担心!

但是,也有例设备的程序. 但是,只要这些程序不再执行操作,它们就会变成暂停的程序,例如音乐拨号和杂志下载. 因此,用户不需要过多地关注这些程序.

您不必在iOS上管理后台任务. 该系统几乎可以为您处理所有情况,编写完善的音频,GPS,VOIP,报亭和附件应用程序将处理其余的情况.

自从操作系统问世以来,就没有真正的“多任务处理”之类的东西. 所谓的多任务处理只是简单地讲,CPU速度足够快,可以在很短的时间内支持多个进程中的动作. 所谓的“单个任务”不过是当前任务的专有资源.

简单来说,IOS 4 APP有三种类型:

1. 保存场景.

即: 直接终止进程并在按下Home(主页)按钮10秒钟内释放内存. 一般而言,所有程序进入后台后都有5秒的执行缓冲时间,有些程序可以延长到10分钟(这些当然是开发人员在设计和提交程序时决定并声明的);因此,当您按下“主页”按钮后,原始程序将返回到后台. 如果它具有执行该操作的额外背景,iOS仍将其暂停10分钟以上.

2. iOS支持的“多任务”.

即: 按下“主页”按钮进入多任务状态并将其保存在内存中,但仅执行系统允许的操作: 例如GPS,例如VoIP,例如Streaming Music等. / p>

3. 真正的桌面级多任务处理.

那是: 只有Safari / Mail是真正的多任务处理,而大多数不是. 此级别的应用程序在后台没有任何限制. (对于动作不受限的程序,一种会在用户不知情的情况下消耗功率,而另一种则会出现安全问题. )

注意: 对于上述三个级别,占用内存的后两个应用程序也会随时从内存中断开,这取决于您是否使用其他应用程序并导致内存不足. 唯一不会中断的背景是Apple的通知系统.

实际上,您可以逐步查看iOS如何引入此机制:

1. 刚出生,一无所有,简单的单一任务.

2. iPhone OS 3.0引入了通知体系结构. 那年几乎所有型号都可以买到. Android迟到了一年,而2.2具有此功能. 到这个时候,据信将使用90%的机器.

3. iOS 4.0+引入了有限的后台多任务处理.

有什么复杂的?所有应用都是小型虚拟机,就像android诞生一样,没有任何限制. 让Java程序员编写的应用程序可以随意运行,而Java程序员是世界上最大的农民工,他们没有内存管理经验和资源消耗概念.

只有两个答案: 电力,安全性. 安全性并没有说明如何在避免过多功耗的同时保持多任务处理的优势,苹果已经花了很多心思. 而不是像webOS / Android这样简单而粗糙的桌面级多任务处理. iPhone 4甚至在硬件上都非常努力,使用3D堆叠技术组装A4芯片,内部组件高度集成,并且天线移至身体表面以增加内部电池空间.

实际上,在iOS中,其背景不同于Symbian和Windows. 苹果是假的. 通过双击“主页”按钮打开的列表只会打开一个名为“最近打开的程序列表”的东西. 在Symbian和Windows,Android和其他智能系统中,将程序放在后台时,它是活动的,与前景之间没有区别. 但是iOS不一样. 将程序置于后台后,iOS会停止该程序,包括联网等,并且所有进程都将停止. (IOS仅使某些进程具有后台运行权限,例如音乐播放. 某些类型). 换句话说,这个程序基本上已经死了……这样做的好处是,Apple一次只能运行一个程序,而另一个程序将停止运行,因此它非常流畅(基本上可以说有些特殊进程可以在后台运行). 当然,苹果用户因无法在后台挂起QQ而受到批评,其原因是一旦按下“主页”按钮即被断开连接(当然,苹果可以通过推动解决此问题). 尽管程序已停止,但程序未在内存中释放. 而是继续将其存储在内存中. 这样做的好处是,当您再次打开该程序时,它将返回到您之前关闭该程序的界面,并且该程序继续快速运行.

那么,当内存中有太多程序而内存不足时会发生什么呢?当内存不足时,iOS会根据自身确定程序的优先级,然后清除程序占用的内存. 例如,音乐应属于优先级较高的程序. iOS会根据优先级和使用次数来决定先从后台清除哪些程序. 不只是时间. 将程序踢出内存称为挂起. 这样可以释放内存,以供新打开的程序使用. 为了验证这一点,越狱模型的朋友可以专门研究下一个插件(SwitcherMod),该插件可以在后台将悬浮的程序显示为灰色和透明,并且仍在内存中的程序可以正常显示.

在运行大型游戏和占用大量内存的应用程序之前,您可能会明显感到卡住. 这是因为系统释放了足够的内存以供大型程序运行,这可能涉及许多APP,这需要一些CPU资源和时间,因此会结结巴巴

摘要: 您根本不需要清除背景,因为iOS会根据需要自动释放不必要的内存. 但是,当iOS释放内存时,它将占用CPU,从而导致短暂的延迟. 如果您不关心此事,请以后再忽略背景. 如果您认为苹果是完美的,那就不会口吃. 然后及时清除无用的背景.

大多数没有退出的Android应用程序的设计实际上是有道理的,这与系统的进程调度机制有关. 如果您了解Java,则可以更清楚地了解这种机制. 实际上,类似于Java的垃圾回收机制,系统具有回收内存的规则. 内存调度有一个阈值. 只有低于此值,系统才会关闭用户不需要的列表. 当然,默认情况下此值设置为较小,因此您将看到内存始终在很少的值上徘徊. 但实际上他并不影响速度. 相反,它可以加快应用程序的下一次启动速度. 这是android广告的优势之一. 如果您手动关闭该过程,则没有必要. 特别是自动关闭进程的软件. 这里有人会说,为什么在内存不足的情况下运行大型程序会很慢?实际上,这很简单. 在没有足够的内存时打开大型程序将触发系统自己的进程调度策略. 这是非常昂贵的操作,尤其是当程序频繁向系统请求内存时. 在这种情况下,系统不会关闭所有打开的进程,而是有选择地关闭. 频繁的调度自然会降低系统速度. 因此,论坛上有一个程序可以更改可以改进的内存阈值. 但是根据值的设置,更改可能还会引起一些问题. 那么,过程管理软件是否必要?一些. 在运行大型程序之前,您可以手动关闭某些进程以释放内存,这可以显着提高运行速度. 但是某些小程序可以由系统本身完全管理.

谈到这一点,一些朋友可能会问,如果它与程序无关,会消耗更多的功率吗?我将谈论android背景的原理,您将了解. 当android应用程序切换到后台时,它实际上被挂起并且不消耗CPU资源,而仅保持运行状态. 那么,为什么有些程序会切出并重新进入主界面?但是,如果程序要在后台处理某些内容(例如音乐播放),它将启动服务. 服务可以在后台连续运行,因此只有具有服务的应用程序才会在后台消耗功率. 这可以在流程管理软件中看到,标签是服务. 至于广播什么,我不会覆盖. 因此,没有服务的应用程序在后台完全没有电源,因此不需要关闭. 这种设计原本是一种非常好的设计,下次您启动该程序时,它会更快,因为您不需要读取接口资源,为什么需要关闭它们才能杀死此android的优势?剩下一个. 为什么Android应用程序看起来如此占用大量内存. 如您所知,Android上的应用程序当然是Java,这是必需的,并且android上的应用程序具有单独的虚拟机,这意味着每次打开应用程序时安卓对比ios,都会打开一个独立的虚拟机. 这种设计的原因是为了防止虚拟机崩溃并导致整个系统崩溃,但以需要更多内存为代价. 以上设计确保了android的稳定性. 通常情况下,最多只有一个程序会崩溃,但是整个系统不会崩溃,并且永远不会出现内存不足的提示. 每个人都可能被Windows毒死,并且总是想保留更多的内存,但是实际上这并不一定会提高速度. 相反,它失去了程序快速启动的系统功能,这是不必要的. 您可能希望像我所说的那样使用该系统. 最后,我推荐一个过程管理软件,该软件可以在系统面板和市场上找到. 界面友好,可快速启动. 功能也不错. 这是一个用于手动关闭进程的好软件.

1. 后台程序的运行状态

IOS: 共有三种类型的应用程序. 切换到后台后,大多数应用程序将停止运行. 任务完成后,某些应用程序(音乐,语音)也将停止. 后台应用程序不占用CPU,但是应用程序内存仍然被占用.

Android: 切换背景后,应用程序进入onstop()状态. 它并没有真正停止. 在这种状态下,不消耗CPU. 一些Android应用程序带有后台服务. 后台服务不会停止. 它将消耗CPU并维护应用程序内存. 职业状态

2,后台应用程序内存管理

IOS: 后台应用程序内存保留,当新打开的应用程序请求内存时,将有一套完善的机制(重要性,打开次数等)来确定回收哪些应用程序的内存并为新的应用程序分配足够的内存打开的应用程序; p>

Android: 设置内存阈值. 仅在此值以下,系统才会根据列表关闭用户不需要的东西. 当没有足够的内存时打开一个大型程序将触发系统自己的调度过程调度策略,并极大地消耗系统. 资源;每个android都在虚拟机上运行,​​因此会占用更多内存

本文来自电脑杂谈,转载请注明本文网址:

http://www.pc-fly.com/a/sanxing/article-145263-1.html

ios和android操作收拾,iOS和Android后台机制的比较相关推荐

  1. android手机上的ancs,Android BLE开发之操作IOS ANCS

    前言 之前写过两篇有关于ANCS的文章,最近一段时间老是有人问关于得到ANCS服务的问题,因为IOS ANCS不同于其他的Peripheral一样对周边所有的蓝牙设备广播自己,而是仅有连接上配对并连接 ...

  2. 简述Android操作系统和IOS系统的区别;

    软件测试面试题中: 简述Android操作系统和IOS系统的区别: 1.两者运行机制不同:IOS采用的是沙盒运行机制,安卓采用的是虚拟机运行机制. 2.两者后台制度不同:IOS中任何第三方程序都不能在 ...

  3. 苹果的操作系统和linux,苹果IOS成为全球第三大操作系统超android和linux总和

    据net market share研究的数据显示,2010年8月份,苹果旗下的ios已经成为仅次于windows(市场份额为91.34%)和MAC(市场份额为5.00%)的全球第三大操作系统,市场份额 ...

  4. 在android上移植ios

    2019独角兽企业重金招聘Python工程师标准>>> Android与IOS是最受人们欢迎的两大移动平台,Android与IOS之争是一个永久的话题.接下来笔者就结合自己的知识和网 ...

  5. Android和ios速度,不拼硬件拼体验 Android和iOS系统的加载速度测验

    Android和iOS无疑是目前最为成功的两款手机操作系统,iOS是封闭的,只有苹果自家可以搭载使用,目前已有八代产品,最新一代产品为iPhone 6和iPhone 6 Plus.而具有开源免费优势的 ...

  6. Android打开jsp页面,如何确定是通过jsp页面上的Android设备还是IOS设备访问网页

    路上的小 01-15 2878 加载和访问JSP时,将判断是手机Web端还是PC端 $(document).ready(function(){//平台,设备和操作系统var system = {win ...

  7. android8.0于与ios,android 8.0 oreo抄袭苹果吗 android oreo和ios 11对比

    在开发Android Oreo时,谷歌被传android 8.0 oreo抄袭了苹果iOS的部分创意,例如应用图标通知角标.表情符号.画中画.自动填写等. 谷歌刚刚公布了Android Oreo,它提 ...

  8. WP与IOS与Android的后台机制相同与不同

    简介: 1.Windows Phone与IOS的后台机制是 后台挂起 + 待机 + 通知代理 这样一种模式.也就是说一个程序在后台的时候,处于一种挂起状态,程序不能访问CPU.网络和其他系统资源,除了 ...

  9. android测试测试什么,1,web测试,Android测试,Ios测试的共同点与

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 1,web测试,Android测试,Ios测试的共同点与异同点都是哪些? 三者测试的共同点:都是为了保证软件系统的质量,满足客户需求,测试的设计方法都相同 ...

最新文章

  1. 三维家导入户型镜像怎么使用_【业】1分钟看懂三维家定制柜设计
  2. python处理数据的优势-选择python进行数据分析的理由和优势
  3. SpringMVC教程--图片上传
  4. PAT甲级题目翻译+答案 AcWing(进位制)
  5. 巴菲特的价值投资的第二版本
  6. java中b的平方表示_第七届蓝桥杯Java B——四平方和
  7. 江淮大众正式更名,今日盘中涨停!
  8. 没有工作经验找it_没有工作经验怎么找工作?
  9. mysql 聚集索引 存什么,关于mysql的聚集索引
  10. 「一本通 4.1 例 3」校门外的树 (loj10115)
  11. php继承 重写方法吗,PHP中的继承与重写
  12. C 入门 第五节 多维数组 字符串数组
  13. 苹果鼠标右键怎么按_UG经验技巧案例17把UG命令设置到Shift+Ctrl+鼠标的左、中、右三键及右键长、按右键的方法...
  14. JAVA学习笔记(七)细胞自动机(带注释)
  15. 微信小程序弹窗禁止页面滚动
  16. dcos 正确的查看日志的姿势
  17. mybatis mysql 调用存储过程 多个返回值_被Mybatis坑惨了
  18. GWA2吉娃兔升級基於事件驅動的緩存處理模塊
  19. CTF训练 web安全SSI注入
  20. 5.2.2、方法重写与隐藏

热门文章

  1. 新手!亚马逊店铺刚下来就被封,什么原因
  2. R语言——相关图的绘制
  3. 大学生查重网站有哪些
  4. FPGA研发心得~~转
  5. 无穷大和无穷大加一谁更大
  6. 一感冒就得红眼病,而且很严重怎么办
  7. cesium解决DeveloperError报错‘Expected longitude to be typeof number, actual type of was string‘
  8. 武汉黑马培训python
  9. Xcode_修改默认名称和公司
  10. vue 祖孙组件通信, 祖组件获取孙组件数据