关于iOS性能优化--利用Event-Based 处理机制

利用Event-Based 处理机制

现在的Mac apps 是利用Cocoa 事件系统或者Carbon 事件管理器。(类似地,iPhone应用利用由UIKit 框架提供的touch-based 事件系统。)你的应用永远不要通过查询系统来获取事件。这样做的话相当低效。事实上,当没有事件处理时,查询代码是100%的浪费CPU时间。现代的event-based APIs 是基于以下目的而设计的:

1.提高应用对用户的响应度

2.降低CPU使用率

3.最小化应用的工作集--任意给定时间加载进内存的代码业数量

4.允许系统积极有效的管理power

除了用户事件以外,还应该避免在其他情况查询。在OS X and iOS 中线程利用run loops 对定时器,网络事件与其它输入性数据提供on-demand response。许多框架对某些作业使用异步编程模型,当作业完成时,通知既定的处理函数或者方法。在OS X v10.6 and later,dispatch sources 同样提供了一种方式可使你异步接收重要事件并且在dispatch queue 执行它们。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容