为什么iPhone不支持多任务处理?

为什么iPhone不支持多任务处理?,iphone,Iphone,很多人都说苹果为了更好的表现而限制了它。如果是这样的话,苹果应该增加RAM的大小以支持多任务处理。所以苹果不允许这样做。 其他人说,Cocoa Touch应用程序不能同时处理多个任务,因为iPhone只有一个窗口和视图 我不明白这究竟是甚么原因? 请澄清。iPhone支持多任务处理。苹果的应用程序可以在后台运行。您还可以在同一个应用程序中运行多个线程 不允许在后台运行第三方应用程序。为什么?坦白说,没有人能告诉你。他们会直截了当地猜测,因为这是苹果公司目前不允许这样做的决定,苹果公司从未给出原因

很多人都说苹果为了更好的表现而限制了它。如果是这样的话,苹果应该增加RAM的大小以支持多任务处理。所以苹果不允许这样做。 其他人说,Cocoa Touch应用程序不能同时处理多个任务,因为iPhone只有一个窗口和视图

我不明白这究竟是甚么原因?
请澄清。iPhone支持多任务处理。苹果的应用程序可以在后台运行。您还可以在同一个应用程序中运行多个线程

不允许在后台运行第三方应用程序。为什么?坦白说,没有人能告诉你。他们会直截了当地猜测,因为这是苹果公司目前不允许这样做的决定,苹果公司从未给出原因


编辑:另请参阅关于iPhone操作系统多任务的神话

因为苹果不想让你这么做?身陷囹圄的iPhone可以完成多项任务,没问题

我认为这纯粹是一个稳定性、安全性和易用性的问题

iPhone不是一台小型笔记本电脑。它首先是一部电话,是一种紧急通讯设备。为了保护手机的运行,手机功能中的其他一切都被牺牲了。这包括耗尽电池之类的事情

iPhone设计的目的不是让开发者轻松,而是让用户轻松。在设计中塞进太多的复杂性通常会导致比解决问题更多的问题


考虑到iPhone的巨大成功,我认为苹果做出了正确的决定

因为苹果对普通的iPhone应用开发者不够信任


如果你认为他们错了,我建议你去应用商店,随机查看五个应用(不是排名靠前的应用),仔细想想。

iPhone OS确实支持多任务处理——有多个并发线程执行。不允许对不拥有视图的第三方应用程序进行后台处理

由于苹果还没有给出官方的理由,我们能做的最好的事情就是有根据的猜测。与PC相比,iPhone是一款受限制的设备:它既没有也没有足够的辅助存储空间。对于它所做的一切,你必须从有限的电池容量中支付瓦特。为了创造出优秀的产品,你必须在工程上做出权衡

应用程序无后台处理策略限制了开发人员,但带来了以下最终用户可感知的好处:

  • 责任性-电池由正在运行的应用程序耗尽。用户了解运行3D游戏会对他们的正常运行时间造成什么影响。没有第三方应用程序可以挂在后台进行忙碌的等待。这使得苹果可以主动关闭硬件组件的电源,并节省电池寿命
  • 响应性-应用程序尽快启动、运行和退出,因为前台应用程序基本上拥有硬件,操作系统提供服务,并在后台保持警惕。应用程序完成后,操作系统可以释放所有相关资源,并准备好为下一个用户请求提供服务
  • 稳定性-对于真正需要后台处理的任务,如iPod应用程序中的背景音乐播放,苹果有源代码。这些关键部件受到最严格的质量控制
从我的立场来看,苹果的决定非常有道理。即使是拥有WindowsPhone7系列的微软也明白这一点


这是对这个问题的完美视频回答。通过Brandon链接。

如果用户有一种简单的方法来管理后台应用程序,例如在Palm Pre上,这将提高设备的实用性。我不确定它是如何不安全或不稳定的。如果内存不足,它可能会像现在一样关闭应用程序。然而,在当前的应用程序系统中,多任务处理将无法使用,因为除了图标列表和图标列表之外,没有任何管理。Palm Pre并不以其稳定性和易用性著称。我不认为这是一个我们希望苹果效仿的平台。安全性是一个问题,因为你永远不知道后台应用在做什么。天真的用户甚至可能不知道自己正在运行。对于用户来说,管理后台应用程序并不容易,因为95%的民众并不真正理解它们。Palm出现了一些小故障,因为它太容易使系统过载。稳定性,也许不是,但我还没有看到有人被Pre搞糊涂:它非常直观…它向你/每一个/正在运行的应用程序显示。。。(注意:iPhone当然支持多任务处理,因为它与Mac OS X采用相同的内核——它们只是不允许/第三方/应用程序使用它。)这是一个关于底层操作系统的问题,所以我认为超级用户是一个更好的地方。这也是这个问题的一个重复:我现在投票结束这个问题,因为iPhone和iPad都支持第三方应用程序的多任务处理,从iOS 4.0和4.2+1开始。我同意你对苹果最初的r伊森。不过,我确实认为,随着应用程序开发人员获得更多信任,并添加更多功能,苹果将开始松懈,并提供某种形式的有限后台处理,而不使用推送通知服务器,例如在前端应用程序空闲时允许定义的时间片。这将类似于其他嵌入式应用程序evices具有深度睡眠模式,每隔几分钟就会醒来。不过我只是猜测一下。我们将在4.0发布给我们开发人员时看到它。