pthread_create - ライブラリコールの説明 - Linux コマンド集 一覧表
名前
pthread_create - 新しいスレッドを生成する
書式
#include <pthread.h>
int pthread_create(pthread_t *
thread
, pthread_attr_t *
attr
, void * (*
start_routine
)(void *), void *
arg
);
説明
"pthread_create"
は呼び出しスレッドと並行して実行する、新しい制御スレッドを生成する。
新しいスレッドは、
"arg"
を第 1 引数とする
"start_routine"
という関数になる。
新しいスレッドは、
pthread_exit
(3) を呼び出すことによって明示的に終了するか、
関数
"start_routine"
から返ることで暗黙的に終了する。後者の場合は、
"start_routine"
の終了コードとして返す結果を引数として
pthread_exit
(3) を呼び出すことに等しい。
引数
"attr"
には、その新しいスレッドに適用するスレッド属性を指定する。
スレッド属性に関する完全なリストは
pthread_attr_init
(3) に見つけることができる。
引数
"attr"
はまた
"NULL"
をとることができ、その時はデフォルトの属性が用いられる:
生成したスレッドは合流可能で (つまりデタッチされない)、
デフォルト (つまりリアルタイムではない) のスケジューリング方針になる。
返り値
成功すると新しく作成したスレッドの識別子が
引数
"thread"
の指す領域へ格納され、 0 が返る。
エラーの場合、非 0 のエラーコードが返る。
エラー
- "EAGAIN"
- 新しいスレッドのプロセスを生成するための十分なシステム資源がない。
- "EAGAIN"
-
"PTHREAD_THREADS_MAX"
よりも多くのスレッドが既にアクティブである。
著者
Xavier Leroy <Xavier.Leroy@inria.fr>