Operating systems, development tools, and professional services
for connected embedded systems
for connected embedded systems
![]() |
![]() |
![]() |
![]() |
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 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.
![]() |
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:
| Safety: | |
|---|---|
| Cancellation point | No |
| Interrupt handler | No |
| Signal handler | No |
| Thread | Yes |
Caveats:
Calling pthread_setspecific() with a non-NULL value may result in lost storage or infinite loops unless value was returned by pthread_key_create().
See also:
pthread_key_create(), pthread_getspecific()
![]() |
![]() |
![]() |
![]() |

![[Previous]](../prev.gif)
![[Contents]](../contents.gif)
![[Index]](../keyword_index.gif)
![[Next]](../next.gif)
