序言
Thread是能够使多个code paths 在同一个APP内并发运行的几种技术之一。虽然新的技术为并发运行提供了先进、高效的工具(例如operation 对象和GCD),但是OS X和iOS也提供了用于创建和管理threads的接口。
如果我们正在开发一个新的APP,应该先调研下OS X中并发技术(尤其当不熟悉用于实现多线程APP技术时)。这些新技术相较于传统的threads而言,能够减少实现并发的工作量以及提供更高效的性能。更多可用管理线程方式参见 Concurrency Programming Guide. (后续会有译文)。
该文档结构
该文档有以下章节和附录:(后续会有译文)
- About Threaded Programming 介绍线程的概念和它们在APP设计中的角色。
- Thread Management 提供关于threading技术相关信息以及如何使用他们。
- Run Loops 提供关于如何在次要(可以理解为主线程之外的)线程管理事件循环。
- Synchronization 指出了同步相关的问题,以及展示了编程时用于避免多线程出现损坏数据或闪退的工具。
- Thread Safety Summary 提供了一份关于OSX和iOS以及它们的关键性frameworks内在线程安全高度概括性的总结。
相关
更多关于线程的选择,参见 Concurrency Programming Guide. (后续会有译文)。
该文档只简单的提下POSIX threads API,更多关于可用的POSIX thread说明参见pthread主页。更深层次的POSIX threads以及它们的使用参见Programming with POSIX Threads by David R. Butenhof。