タグ

pthreadに関するuninekoのブックマーク (2)

  • ITmedia エンタープライズ:Native POSIX Thread Library for Linux

    特集 2003/06/27 00:48 更新 UNIX USER 2003年7月号特別企画より転載 Native POSIX Thread Library for Linux 新しいスレッドライブラリ「Native POSIX Thread Library for Linux」について、Red HatのUlrich DrepperとIngo Molnarが発表した論文の内容を簡単に紹介する。 今日、標準的に使われているLinuxスレッドの背後にある考え方は、「プロセス間のコンテクスト切り替えが、1つのカーネルスレッドで各ユーザースレッドを扱うのに十分なほど高速である」というものだ。スレッドレジスタは使用せず、局所的なメモリはスタック上に置かれる。 また、シグナルやそのほかの管理を正しく行うためには、管理スレッドが必要となる。カーネル内に利用できる同期プリミティブが存在しないため、実装にはシ

  • UNIX上でのC++ソフトウェア設計の定石 (4) - memologue

    鉄則4: スレッドの「非同期キャンセル」を行わない設計にしよう スレッドの非同期キャンセルとは: あるスレッドが別のスレッドを即座に強制終了すること 単に「設計が楽だから」「シンプルになるから」という理由でスレッドの非同期キャンセルを使うのはやめよう 一見楽そうに、シンプルそうに見えるだけ。様々な問題を引き起こす可能性が。問題の詳細を把握しないまま、スレッドの非同期キャンセルを行う設計にしないこと! pthread規格では、あるスレッドの処理を別のスレッドが強制的に中断することが許可されています。これを、スレッドのキャンセルと呼びます。 スレッドのキャンセルには次の二種類があります。 方式1: 非同期キャンセル(PTHREAD_CANCEL_ASYNCHRONOUS) キャンセルは即座に行われる 方式2: 遅延キャンセル(PTHREAD_CANCEL_DEFERRED) キャンセルは、スレ

    UNIX上でのC++ソフトウェア設計の定石 (4) - memologue
  • 1