编写双核iDevices代码

rak*_*hNS 2 multithreading multicore ios

我在为多核设备编写代码时有些疑问.最初iPhone 3GS iPhone拥有单核CPU.因此,当我为3GS申请并且如果我在多线程中编写代码时,如果我在iPhone 4或iPad 2(双核)中运行应用程序,iOS是否将这些多个线程分配给不同的核心?或者,从开发人员那里获得多核CPU功能的好处是有什么要做的.这是iOS的重要性,为不同的核心分配不同的线程吗?并且还假设有一个函数需要很长时间才能执行,而我在这个线程中调用此代码(没有创建多个线程)iOS是否将大任务拆分为两个较小的任务并在不同的内核中执行?

Jod*_*ins 6

如果使用线程原语编写代码,操作系统将自动处理核心管理.

此外,如果您使用GCD,它将为您优化核心和线程管理.

最重要的是,使用GCD(直接或通过NSOperationQueue等帮助程序),系统将自动调整对系统CPU资源的访问,无论您是在单个还是多个CPU架构上.