OS_JoinThread

構文

#include <nitro/os.h>
void OS_JoinThread( OSThread* thread );
 

引数

thread 結合するスレッドへのポインタ

返り値

なし。

説明

スレッドを結合し、指定のスレッドが終了するまで待ちます。既に指定のスレッドが終了しているときには何もしません。

この関数の中では、呼び出したスレッドは指定のスレッドthread の持つスレッドキューに自らのスレッド(呼び出したスレッド)を登録して OS_SleepThread() でスリープ状態になります。そして、指定のスレッド threadOS_ExitThread() で終了するときにスレッドキューに登録されたスレッド全てを(それらのスレッドの状態に関わらず) 実行可能状態にしてリスケジューリングします。

複数のスレッドが、一つのスレッドに対し OS_JoinThread() しても構いません。

参照

OS_InitThread, OS_SleepThread, OS_ExitThread

履歴

2004/11/10 説明を解りやすく修正
2004/06/25 初版