| PTHREAD_KEY_DELETE(3) | Library Functions Manual | PTHREAD_KEY_DELETE(3) |
pthread_key_delete —
delete a thread-specific data key
#include
<pthread.h>
int
pthread_key_delete(pthread_key_t
key);
The
pthread_key_delete()
function deletes a thread-specific data key previously returned by
pthread_key_create().
The thread-specific data values associated with key
need not be NULL at the time that
pthread_key_delete() is called. It is the
responsibility of the application to free any application storage or perform
any cleanup actions for data structures related to the deleted key or
associated thread-specific data in any threads; this cleanup can be done
either before or after pthread_key_delete() is
called. Any attempt to use key following the call to
pthread_key_delete() results in undefined
behavior.
The
pthread_key_delete()
function is callable from within destructor functions. Destructor functions
are not invoked by pthread_key_delete(). Any
destructor function that may have been associated with
key will no longer be called upon thread exit.
If successful, the pthread_key_delete()
function will return zero. Otherwise an error number will be returned to
indicate the error.
The pthread_key_delete() function will
fail if:
EINVAL]pthread_getspecific(3), pthread_key_create(3), pthread_setspecific(3)
The pthread_key_delete() function conforms
to ISO/IEC 9945-1:1996
(“POSIX.1”).
| April 4, 1996 | macOS 15.6 |