pthread_setspecific()

Set a thread-specific data value

Synopsis:

#include <pthread.h>

int pthread_setspecific( pthread_key_t key,
                         const void* value );

Arguments:

key
The key associated with the data that you want to set (see pthread_key_create()).
value
The data value that you want to store.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The pthread_setspecific() function binds the thread-specific data value value with the thread-specific data key key.

You can call this function from within a thread-specific data destructor function. However, calling pthread_setspecific() from a destructor with a non-NULL value may result in lost storage.

Note:
You must call this function with a key that you got from pthread_key_create(). You can't use a key after destroying it with pthread_key_delete().

Returns:

EOK
Success.
ENOMEM
Insufficient memory to store thread-specific data value value.
EINVAL
Invalid thread-specific data key key.

Examples:

See pthread_key_create().

Classification:

POSIX 1003.1

Safety:
Cancellation pointNo
Interrupt handlerNo
Signal handlerNo
ThreadYes
Page updated: