int
pthread_setspecific(
pthread_key_t key
, const void *value
)
)
function associates a thread-specific value with a
key
obtained via a previous call to
pthread_key_create(
).
Different threads have different values bound to each key.
These values are
typically pointers to blocks of dynamically allocated memory that have been
reserved for use by the calling thread.
The effect of calling
pthread_setspecific()
with a key value not obtained from
pthread_key_create(
)
or after
key
has been deleted with
pthread_key_delete()
is undefined.
pthread_setspecific()
may be called from a thread-specific data destructor function, however this
may result in lost storage or infinite loops.
)
function will return zero.
Otherwise an error number will be returned to
indicate the error.
)
shall fail if:
ENOMEM
]
key
.
pthread_setspecific()
may fail if:
EINVAL
]
key
value is invalid.
)
conforms to
ISO/IEC 9945-1:1996 (``POSIX.1'') .