线程是单个应用中可以并发执行多个代码路径的多种技术之一。虽然更新的技术如操作对象(Operation objects)和Grand Central Dispatch(GCD),提供一个更加现代化和高效率的基础设施来实现多核并发,但是Mac OS X和iOS也提供一套接口来创建和管理线程。
本文档介绍了Mac OS X上面的可用线程包,并且演示如何使用它们。本文档还描述了在你的应用中多线程代码同步的相关技术。
重要:如果你正在创建一个新的应用程序,我们鼓励你研究Mac OS X上面实现并发的替代方法。如果还没有熟悉掌握需要实现一个多线程应用的设计技术的话,我们更鼓励你那样做。这些替代方法简化了大量原本你需要实现来执行并发路径的工作,并且提供了比传统线程更好的性能。获取更多相关技术的信息,你可以查阅Concurrency Programming Guide。
本文档结构
本篇文档包含了以下章节和附录:
- “关于多线程编程”介绍了多线程的概念和它们在应用设计里面的角色。
- “线程管理”提供了关于Mac OS X上面线程技术的相关信息,并且教你如何使用它们。
- “Run Loops” 提供有关如何管理在辅助线程中的循环事件处理的信息。
- “同步(Synchronization)” 介绍同步问题和你可以用于阻止多线程破坏你的数据或者导致你程序崩溃的工具。
- “线程安全总结” 提供了Mac OS X和iOS上面固有的线程安全的高度总结和它们的主要框架