aboutsummaryrefslogtreecommitdiff
path: root/documentation/manual-pages/ja/man3/pthread_key_create.3
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/manual-pages/ja/man3/pthread_key_create.3')
-rw-r--r--documentation/manual-pages/ja/man3/pthread_key_create.3102
1 files changed, 102 insertions, 0 deletions
diff --git a/documentation/manual-pages/ja/man3/pthread_key_create.3 b/documentation/manual-pages/ja/man3/pthread_key_create.3
new file mode 100644
index 0000000000..759bbb7fb3
--- /dev/null
+++ b/documentation/manual-pages/ja/man3/pthread_key_create.3
@@ -0,0 +1,102 @@
+.\" Copyright (c) 1996 John Birrell <jb@cimlogic.com.au>.
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\" 1. Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\" notice, this list of conditions and the following disclaimer in the
+.\" documentation and/or other materials provided with the distribution.
+.\" 3. All advertising materials mentioning features or use of this software
+.\" must display the following acknowledgement:
+.\" This product includes software developed by John Birrell.
+.\" 4. Neither the name of the author nor the names of any co-contributors
+.\" may be used to endorse or promote products derived from this software
+.\" without specific prior written permission.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY JOHN BIRRELL AND CONTRIBUTORS ``AS IS'' AND
+.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
+.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
+.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
+.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
+.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+.\" SUCH DAMAGE.
+.\"
+.\" %FreeBSD: src/lib/libc_r/man/pthread_key_create.3,v 1.6.2.5 2001/12/17 10:08:26 ru Exp %
+.\"
+.\" $FreeBSD$
+.Dd April 4, 1996
+.Dt PTHREAD_KEY_CREATE 3
+.Os
+.Sh 名称
+.Nm pthread_key_create
+.Nd スレッド固有のデータキーの作成
+.Sh ライブラリ
+.Lb libc_r
+.Sh 書式
+.In pthread.h
+.Ft int
+.Fn pthread_key_create "pthread_key_t *key" "void (*destructor)(void *)"
+.Sh 解説
+.Fn pthread_key_create
+関数は、プロセス内の全てのスレッドに可視のスレッド固有のデータキーを
+作成します。
+.Fn pthread_key_create
+によって提供されたキーの値は、スレッド固有のデータの位置を示すために
+使用される不透明なオブジェクトです。
+別のスレッドによって同じキー値が使用されることが可能ですが、
+.Fn pthread_setspecific
+によってキーに結びつけられた値はスレッド毎を基準に保守され、
+呼び出しているスレッドが生きている間存続します。
+.Pp
+キーの作成時には、全てのアクティブなスレッド内の新しいキーに、値 NULL が
+関連付けられます。
+スレッドの作成時には、新しいスレッド内の全ての定義済のキーに、値 NULL が
+関連付けられます。
+.Pp
+任意のデストラクタ関数は、個々のキーの値と関連付けられることができます。
+スレッドの終了時に、キー値が NULL でないデストラクタのポインタを持ち、
+かつスレッドがキーに関連付けられた NULL でない値を持っている場合には、
+現在関連付けられている値を唯一の引数として、指されている関数が呼び出されます。
+スレッドの終了時にそのスレッドのための 1 つ以上のデストラクタ関数が
+存在する場合には、デストラクタの呼び出しの順序は未規定です。
+.Pp
+デストラクタに関連付けられた全ての NULL でない値のために、全ての
+デストラクタが呼び出された後で、まだ幾つかの関連付けられたデストラクタを
+持つ NULL でない値がある場合には、その過程が繰り返されます。
+最低でも [PTHREAD_DESTRUCTOR_ITERATIONS] 回のデストラクタの呼び出しの
+繰り返しの後で、まだなお幾つかの関連付けられたデストラクタを
+持つ NULL でない値がある場合には、実装はデストラクタの呼び出しを中止します。
+.Sh 戻り値
+問題がない場合は、
+.Fn pthread_key_create
+関数は、新しく作成されたキーの値を
+.Fa key
+で指定された場所に格納し、0 を返します。
+問題がある場合は、そのエラーを示すためにエラー番号が返されます。
+.Sh エラー
+.Fn pthread_key_create
+は以下の場合に失敗します。
+.Bl -tag -width Er
+.It Bq Er EAGAIN
+別のスレッド固有のデータキーを作成するために必要なリソースがシステムに
+不足しています。または、1 つのプロセスごとのキーの総数についての
+システムの制限 [PTHREAD_KEYS_MAX] を超過しました。
+.It Bq Er ENOMEM
+キーを作成するための十分なメモリがありません。
+.El
+.Sh 関連項目
+.Xr pthread_getspecific 3 ,
+.Xr pthread_key_delete 3 ,
+.Xr pthread_setspecific 3
+.Sh 規格
+.Fn pthread_key_create
+は
+.St -p1003.1-96
+に適合しています。