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

Silphireの日記: pthread日記(8) - pthread_key_create()

日記 by Silphire

スレッド特有のデータを保持する為のキーを作成します。

int pthread_key_create(pthread_key_t *key, void (*destructor)(void*));

pthreadには、スレッドに固有のデータを割り当てる機能があります。データは全てのスレッドに対して公開されます。

pthread_key_create()は、スレッド固有のデータを持つ為のキーを作成します。キーが作られた時には、データにはNULLが結びつけられています。実際にデータを結びつけるには、 pthread_setspecific()を使います。

新しくスレッドが作られた時、そのスレッドの中では全てのキーにNULLが割り当てられます。

destructorは、NULLで無いデータがキーに割り当てられており、キーが属するスレッドが終了した時に呼び出されるデストラクタです。必要無い時はNULLを指定します。1つのスレッドに複数のデストラクタが存在した時、それらの呼び出される順番は未定義です。

pthread_key_create()が成功した時には、keyにキーが格納され、戻り値として0が返されます。エラーの時は、エラーに応じた値が返されます。

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

人生unstable -- あるハッカー

読み込み中...