pthread_self

PTHREAD_SELF(3)             Linux Programmer's Manual            PTHREAD_SELF(3)



名前
       pthread_self - 呼び出したスレッドの ID を取得する

書式
       #include <pthread.h>

       pthread_t pthread_self(void);

       -pthread でコンパイルしてリンクする。

説明
       pthread_self() 関数は、呼び出したスレッドの ID を返す。 得られる ID は、このスレッドが作成された
       pthread_create(3) の 呼び出しで *thread で返されるのと同じ値である。

返り値
       この関数は常に成功し、呼び出したスレッドの ID を返す。

エラー
       この関数は常に成功する。

属性
   マルチスレッディング (pthreads(7) 参照)
       pthread_self() 関数はスレッドセーフである。

準拠
       POSIX.1-2001.

注意
       POSIX.1 では、スレッド ID を表現するのに使用する型は、 スレッド実装が完全に自由に選択してよいことになっている。 例えば、スレッド
       ID を表現するのに数値型を使っても構造体を使ってもよい。 そのため、移植性を確保しつつ、 C 言語の等価演算子 (==) を使って、
       pthread_t 型の変数の比較を行うことはできない。 代わりに pthread_equal(3) を使うこと。

       スレッド識別子はその内部構造を意識すべきではない。 pthreads 関数以外でスレッド ID を利用しようとした場合、
       移植性がなくなり、どのような結果が得られるかも分からない。

       スレッド ID の一意性が保証されるのは、あるプロセス内においてのみである。 終了したスレッドが join されたり、 切り離された
       (detached) スレッドが終了されたりした後は、 そのスレッド ID は再利用されることがある。

       pthread_self() が返すスレッド ID は、 gettid(2) が返すカーネルスレッド ID とは違うものである。

関連項目
       pthread_create(3), pthread_equal(3), pthreads(7)

この文書について
       この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部
       である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。



Linux                              2014-05-13                    PTHREAD_SELF(3)