序言
スレッドは、単一のアプリケーション内で複数のコードパスを同時に実行できるようにするいくつかの技術の 1 つです。オペレーションオブジェクトや Grand Central Dispatch (GCD) などの新しいテクノロジーは、並行処理を実装するためのより現代的で効率的なインフラストラクチャを提供しますが、OS X と iOS もスレッドの作成と管理のためのインタフェースを提供します。
この文書では、OS X で利用可能なスレッドパッケージについて紹介し、それらの使い方を示します。この文書では、アプリケーション内のマルチスレッドコードのスレッド化と同期化をサポートするために提供される関連技術についても説明します。
この文書の構成
この文書には、以下の章と付録があります。
- スレッドプログラミングについて は、アプリケーション設計におけるスレッドの概念とその役割を紹介します。
- スレッド管理 では、OS X 内のスレッディングテクノロジーとその使用方法に関する情報を提供します。
- 実行ループ では、セカンダリスレッド内のイベント処理ループを管理する方法に関する情報を提供します。
- 同期化 では、同期の問題と、複数のスレッドがデータを破損したり、プログラムがクラッシュするのを防ぐために使用するツールを説明しています。
- スレッドの安全性の要約 では、OS X と iOS の本質的なスレッドの安全性とその主要なフレームワークの概要を説明しています。
以下も見よ
スレッドの代替方法については、並行処理プログラミングガイド を参照してください。
この文書では、POSIX スレッド API の使用方法を簡単に説明しています。使用可能な POSIX スレッドルーチンの詳細については、pthread のマニュアルページを参照してください。POSIX スレッドとその使用方法の詳細については、David R. Butenhof の POSIX スレッドによるプログラミング を参照してください。