パスワードを忘れた? アカウント作成
451885 journal

Silphireの日記: pthread日記(2) - pthread_join()

日記 by Silphire

スレッドが終了するまでブロックします。

int pthread_join(pthread_t thread, void **value_ptr);

threadで指定したスレッドが終了するまで、現在の処理を中断します。スレッドが既に終了している場合は、すぐに次の処理へ移行します。

2つ目の引数value_ptrは、スレッドの戻り値を取得する為のポインタです。 pthread_create() に書いた通り、スレッドの関数の戻り値はvoid *です。なので、void **で戻り値を受け取るようになっています。

pthread_join()の実行が成功した時は0を、それ以外の、エラーが発生した時にはエラーに対応した値が返されます。

2つのスレッドの間で、互いのスレッドに対してpthread_join()を実行するような場合、互いが互いの終了を待ってデッドロックに陥る可能性があります。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
typodupeerror

私はプログラマです。1040 formに私の職業としてそう書いています -- Ken Thompson

読み込み中...