pthread_kill サブルーチン

目的

指定されたスレッドへ、シグナルを送信します。

ライブラリー

スレッド・ライブラリー (libpthreads.a)

構文

#include <signal.h>

int pthread_kill (thread, signal)
pthread_t thread;
int signal;

説明

pthread_kill サブルーチンは、シグナル signal をスレッド threadに送信します。 これは、単一スレッド・プロセスを持つ kill サブルーチンのようなスレッドと共に動作します。

受信スレッドがシグナルの送達をブロックした場合、シグナルの送達をスレッドが非ブロックするか、シグナルに関連したアクションがシグナルを無視するように設定されるまで、シグナルはスレッド上で保留状態のままになります。

注: pthread.h ヘッダー・ファイルは、スレッド・ライブラリーを使用する各ソース・ファイルの最初の組み込みファイルでなければなりません。 それ以外の場合は、 -D_THREAD_SAFE コンパイル・フラグを使用するか、cc_r コンパイラーを使用する必要があります。 この場合、フラグは自動的に設定されます。

パラメーター

項目 説明
thread シグナルのターゲット・スレッドを指定します。
signal 送達されるシグナルを指定します。 シグナル値が 0 の場合、エラー検査は実行されますが、シグナルは送達されません。

戻り値

正常終了の場合は、関数はゼロの値を戻します。 それ以外の場合、関数はエラー番号を返します。 pthread_kill 関数が失敗すると、シグナルは送信されません。

エラー・コード

pthread_kill 関数は、以下の場合に失敗します。

項目 説明
ESRCH 与えられたスレッド ID が指定したスレッドに対応するスレッドが見つかりません。
EINVAL signal パラメーターの値が、無効またはサポートされないシグナル番号です。

pthread_kill 関数は、エラー・コード EINTRを戻しません。