thr_setspecific(3thread)
thr_setspecific --
set thread-specific data
Synopsis
cc [options] -Kthread file
#include <thread.h>
int thr_setspecific(thread_key_t key, void *value);
Description
thr_setspecific associates a thread-specific value
with key.
Different threads can bind different values to the same key.
If the value bound to key
must be updated during the lifetime of the thread,
the caller must release the storage associated with the old value
before a new value is bound, or the storage is lost.
Parameters
key-
key to which value is to be bound
value-
pointer to thread-specific data, or NULL
key parameter
key is a key obtained with a previous
call to
thr_keycreate(3thread).
The effect of calling thr_setspecific with a key
value not obtained with thr_keycreate
or after key has been deleted with thr_keydelete
is undefined.
value parameter
value is typically a pointer to blocks of dynamically-allocated memory
that have been reserved for use by the calling thread.
If value is NULL,
the calling thread will give up a non-NULL reference to key.
Return values
thr_setspecific returns zero for success
and an error number for failure.
Errors
If any of the following conditions is detected,
thr_setspecific returns the corresponding value:
EINVAL-
The key value is invalid.
ENOMEM-
There is not sufficient memory available to establish the binding.
References
Intro(3thread),
thr_getspecific(3thread),
thr_keycreate(3thread),
thr_keydelete(3thread)
© 2004 The SCO Group, Inc. All rights reserved.
UnixWare 7 Release 7.1.4 - 25 April 2004