同期オブジェクトの要約

問い合わせを受けたので、とりあえずは自分用のメモです。あとで、きちんとまとめてネタにします。

【ミューテックス】

  • カーネルオブジェクト
  • 所有しているスレッドが終了すると、"放棄された"ことを示すエラーを生成する
  • Wait~ 関数で使える
  • 名前を持っていて、複数のプロセスからオープンできる
  • それを所有するスレッドだけが解放できる

【イベントオブジェクト】

  • カーネルオブジェクト
  • プログラムで完全な制御ができる
  • 名前を持っていて、複数のプロセスからオープンできる
  • OS はウェイクアップリクエストをキューに入れて管理することはない

【セマフォ】

  • カーネルオブジェクト
  • 所有者がいない
  • 名前を持っていて、複数のプロセスからオープンできる
  • 任意のスレッドから解放できる

【クリティカルセクション】

  • ローカルオブジェクト
  • とにかく速い
  • 一度に1つのクリティカルセクションしか持つことができない
  • スレッドによって放棄されたかどうかを判定することができない

簡単な要約だけど、意外に使えそうな感じです。
まとまったものをあまり見たことがないなぁ。

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中

%d人のブロガーが「いいね」をつけました。