文書更新履歴


この表は、スレッドプログラミングガイド への変更点を説明しています。


日付ノート
2014-07-15スレッドセーフなクラスのリストから NSXMLDocument を削除しました。
2013-10-22スレッドセーフなオブジェクトのリストに NSXMLParserNSXMLDocument を追加しました。
2013-08-08廃止された情報を削除しました。
2010-04-28入力ミスを修正しました。
2009-05-22操作オブジェクトに関する情報を "並行処理プログラミングガイド" に移動しました。この本はスレッドだけに再集中しました。
2008-10-15操作オブジェクトおよび操作キューに関するサンプルコードを更新しました。
2008-03-21iOS 用に更新しました。
2008-02-08スレッド関連の概念とタスクを大幅に書き直し、更新しました。
スレッドの構成に関する詳細情報を追加しました。
同期ツールのセクションを 1 つの章に再構成し、アトミックな操作、メモリバリア、および揮発性変数に関する情報を追加しました。
実行ループの使用と構成に関する詳細を追加しました。
マルチスレッドプログラミングのトピックス から文書のタイトルを変更しました。
2007-10-31NSOperation オブジェクトと NSOperationQueue オブジェクトに関する情報を追加しました。
2006-04-04新しいガイドラインをいくつか追加し、実行ループに関する情報を更新しました。分散オブジェクトのコード例の精度を検証し、他のいくつかの記事でコード例を更新しました。
2005-03-03NSMessagePort の代わりに NSPort を使用するようにポート例を更新しました。
2005-01-11Cocoa のスレッド技法以上を網羅する記事や文書を再編成しました。
スレッドの概念情報を追加し、OS X のさまざまなスレッドパッケージに関する情報を追加しました。
Core Foundation のマルチスレッドに関する資料を取り入れました。
スレッド間のソケットを基本とする通信の実行に関する情報を追加しました。
Carbon スレッドの作成と使用に関するサンプルコードと情報を追加しました。
スレッド安全ガイドラインを追加しました。
POSIX スレッドとロックに関する情報を追加しました。
ポートを基本とした通信を示すサンプルコードを追加しました。
この文書は、以前に マルチスレッド で公開されたスレッドに関する情報を置き換えます。
2003-07-28サードパーティのライブラリでロックを使用するためのアドバイスを更新しました。
2003-04-08サードパーティライブラリのロック/アンロックのバランスに関する情報を再掲しました。
2002-11-12改訂履歴を既存のトピックスに追加しました。


前の章



目次
Xcode の新機能

  • 序言
  • この文書の構成
    以下も見よ
  • スレッドプログラミングについて
  • スレッドとは何か?
    スレッドの用語集
    スレッドの代替
  • スレッドのサポート
  • スレッドパッケージ
    実行ループ
    同期ツール
    スレッド間通信
  • デザインのヒント
  • スレッドを明示的に作成しない
    スレッドを合理的にビジー状態に保つ
    共有データ構造を避ける
    スレッドとユーザーインターフェイス
    終了時のスレッド動作に注意
    例外処理
    スレッドをきれいに終了
    ライブラリでのスレッドの安全性
  • スレッド管理
  • スレッドのコスト
  • スレッドの作成
  • NSThread の使用
    POSTIX スレッドの使用
    NSObject を使ってスレッドを生成
    POSIX スレッドを Cocoa アプリで使用
    Cocoa フレームワークの保護
    POSIX と Cocoa のロックの混在
  • スレッド属性の構成
  • スレッドのスタックサイズの構成
    スレッドローカルな格納の構成
    スレッドの切り離された状態の設定
    スレッドの優先度の設定
  • スレッドのエントリルーチンの作成
  • 自動開放プールの作成
    例外ハンドラの設定
    実行ループの設定
    スレッドの終了
  • 実行ループ
  • 実行ループの解剖学
    実行ループモード
    入力ソース
    ポートを基本としたソース
    カスタム入力ソース
    セレクターソースを Cocoa で実行
    タイマーソース
    実行ループ監視者
    イベントの実行ループシーケンス
  • 実行ループをいつ使用すべきか?
  • 実行ループオブジェクトの使用
  • 実行ループオブジェクトの取得
    実行ループの構成
    実行ループの開始
    実行ループの終了
    スレッドの安全性と実行ループオブジェクト
  • 実行ループソースの構成
  • カスタム入力ソースの定義
    入力ソースの定義
    実行ループへの入力ソースのインストール
    入力ソースのクライアントとの調整
    入力ソースへの信号
    タイマーソースの構成
    ポートを基本とした入力ソースの構成
    NSMachPort オブジェクトの構成
    NSMessagePort オブジェクトの構成
    Core Foundation でのポートを基本とした入力ソースの構成
  • 同期化
  • 同期ツール
    アトミック (微少) な操作
    メモリーバリアと揮発性変数
    ロック(Locks)
    条件
    セレクタルーチンの実行
    同期コストとパフォーマンス
    スレッドの安全性と信号
  • スレッドセーフな設計のヒント
  • 同期を一切避ける
    同期の限界を理解
    コードの正しさへの脅威に気づく
    デッドロックとライブロックを監視
    揮発性変数の正しい使用
    アトミック (微少) 操作の使用
  • ロック (Locks) の使用
  • POSIX mutex ロックの使用
    NSLock クラスの使用
    @synchronized 指令の使用
    NSRecursiveLock オブジェクトの使用
    NSConditionLock オブジェクトの使用
    NSDistributedLock オブジェクトの使用
  • 条件の使用
  • NSCondition クラスの使用
    POSIX 条件の使用
  • スレッドの安全性の要約
  • Cocoa
  • Foundation フレームワークのスレッドの安全性
    スレッドセーフなクラスと関数
    スレッドセーフでないクラス
    メインスレッドのみのクラス
    可変に対する不変
    リエントラント
    クラスの初期化
    自動解放プール
    実行ループ
    Application Kit フレームワークのスレッドの安全性
    スレッドセーフでないクラス
    メインスレッドだけのクラス
    Window の制限事項
    イベント処理の制限事項
    描画の制限事項
    NSView の制限事項
    NSGraphicsContext の制限事項
    NSImage の制限事項
    Core Data フレームワーク
  • Core Foundation
  • 用語集
  • 文書更新履歴












  • トップへ(Thread Program Guide)