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 14.6 |