pthread_setspecific(3) - NetBSD Manual Pages

Command: Section: Arch: Collection:  
PTHREAD_GETSPECIFIC(3)  NetBSD Library Functions Manual PTHREAD_GETSPECIFIC(3)


NAME
pthread_getspecific, pthread_setspecific -- thread-specific data value
LIBRARY
POSIX Threads Library (libpthread, -lpthread)
SYNOPSIS
#include <pthread.h> void * pthread_getspecific(pthread_key_t key); int pthread_setspecific(pthread_key_t key, const void *value);
DESCRIPTION
The pthread_getspecific() function returns the value currently bound to the specified key on behalf of the calling thread. Conversely, the pthread_setspecific() function associates a thread-specific value with a key obtained via a previous call to pthread_key_create(3). Different threads have different values bound to each key. These values are typi- cally pointers to blocks of dynamically allocated memory that have been reserved for use by the calling thread. Undefined behavior may follow if either function is called with a key value not obtained from pthread_key_create(3), or if the call is made after key has been deleted with pthread_key_delete(3). It is possible to call either function from a thread-specific data destructor function. Note however that this is not well defined for the pthread_setspecific() function; lost storage or infinite loops may occur.
RETURN VALUES
The pthread_getspecific() function will return the thread-specific data value associated with the given key. If no thread-specific data value is associated with key, then the value NULL is returned. If successful, the pthread_setspecific() function will return zero. Otherwise an error num- ber will be returned to indicate the error.
ERRORS
No errors are defined for either function.
SEE ALSO
pthread_key_create(3)
STANDARDS
These functions conform to IEEE Std 1003.1-2001 (``POSIX.1''). NetBSD 9.99 July 9, 2010 NetBSD 9.99
Powered by man-cgi (2021-06-01). Maintained for NetBSD by Kimmo Suominen. Based on man-cgi by Panagiotis Christias.