PR_JoinThread

引数で受け取ったスレッドが終了するまで呼んだスレッドをブロックします。

構文

#include <prthread.h>

PRStatus PR_JoinThread(PRThread *thread);

引数

PR_JoinThreadは以下の引数を受け取ります:

thread
join可能であり、有効なスレッドの識別子。

返り値

関数は以下の値の1つを返します:

  • 成功した場合、 PR_SUCCESS を返します。
  • 失敗した場合--例えば、もしjoin可能なスレッドが見つからなかった場合、もしくはターゲットのスレッドがjoin可能でない場合、PR_FAILUREを返します。

説明

PR_JoinThreadはスレッドの終了を同期させるために使用されます。この関数は呼んだスレッドをターゲットのスレッドがjoinablleな状態になるまでブロックするという点で同期的です。PR_JoinThreadは、ターゲットスレッドがそのルート関数から戻った後にのみ呼び出し元に戻ります。

PR_JoinThreadはPR_CreateThreadがreturnされるまで呼び出してはならない。 PR_JoinThreadPR_CreateThreadと同じスレッドで呼ばれない場合、呼び出し元は、PR_CreateThread が完了していることを保証する責任を伴う。

複数のスレッドは同一のスレッドが完了するのを待つことができません。呼び出し元のスレッドの1つが正常に動作しますが、その他はエラーPR_FAILUREで終了します。

ターゲットスレッドがすでに終了している場合、呼び出し側スレッドはブロックされません。

PR_JoinThreadは中断可能です。

ドキュメントのタグと貢献者

 このページの貢献者: lv7777
 最終更新者: lv7777,