PTHREAD_KEY_DELETE(3) |
FreeBSD Library Functions Manual |
PTHREAD_KEY_DELETE(3) |
名称
pthread_key_delete —
スレッド特有のデータキーを削除する
ライブラリ
POSIX Threads Library (libpthread, -lpthread)
書式
#include < pthread.h>
int
pthread_key_delete( pthread_key_t key);
解説
pthread_key_delete() 関数は、
pthread_key_create() によって以前に返されたスレッド特有のデータキーを削除します。
key に関連付けられたスレッド特有のデータ値は、
pthread_key_delete() が呼び出される時点に NULL である必要はありません。あらゆるアプリケーションの記憶域を解放するか、または削除されたキーと関係するデータ構造、またはあらゆるスレッドの関連するスレッド特有のデータのためのクリーンアップ動作を実行することはアプリケーデョンの責任です。
pthread_key_delete() が呼び出される前または後に、このクリーンアップを行うことができます。
pthread_key_delete() への呼び出しに続く
key を使用するあらゆる試みは、未定義の動作の結果となります。
pthread_key_delete() 関数は、デストラクタ関数の中から呼び出すことが可能です。デストラクタ関数は、 pthread_key_delete() によって呼び出されません。 key に関連付けられていたあらゆるデストラクタ関数は、もはやスレッドの終了時に呼び出されません。
戻り値
成功したなら、
pthread_key_delete() 関数は、0 を返します。そうでなければ、エラー番号がエラーを示すために返されます。
エラー
pthread_key_delete() 関数は、次の場合に失敗します:
-
[
EINVAL]
-
key の値が無効です。
規格
pthread_key_delete() 関数は、 ISO/IEC 9945-1:1996 (“POSIX.1”) に適合しています。