PTHREAD_GETSPECIFIC(3) | Library Functions Manual | PTHREAD_GETSPECIFIC(3)

# NAME

`pthread_getspecific` — get a thread-specific data value

# SYNOPSIS

POSIX Threads Library (libpthread, -lpthread)
`#include <pthread.h>`

void *
`pthread_getspecific`(pthread_key_t key);

# DESCRIPTION

The `pthread_getspecific`() function returns the value currently bound to the specified key on behalf of the calling thread.

The effect of calling `pthread_getspecific`() with a key value not obtained from `pthread_key_create`() or after key has been deleted with `pthread_key_delete`() is undefined.

`pthread_getspecific`() may be called from a thread-specific data destructor function.

# 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.

# ERRORS

None.

# SEE ALSO

pthread_key_create(3), pthread_key_delete(3), pthread_setspecific(3)

# STANDARDS

`pthread_getspecific`() conforms to ISO/IEC 9945-1:1996 (“POSIX.1”).

June 7, 2025 | Debian