PTHREAD_KEY_DELETE(3C) Standard C Library Functions PTHREAD_KEY_DELETE(3C)
NAME
pthread_key_delete - delete thread-specific data key
SYNOPSIS
cc -mt [
flag... ]
file... -lpthread [
library... ]
#include <pthread.h>
int pthread_key_delete(
pthread_key_t key);
DESCRIPTION
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
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
behaviour.
The
pthread_key_delete() function is callable from within destructor
functions. No destructor functions will be invoked by
pthread_key_delete(). Any destructor function that may have been
associated with
key will no longer be called upon thread exit.
RETURN VALUES
If successful, the
pthread_key_delete() function returns
0.
Otherwise, an error number is returned to indicate the error.
ERRORS
The
pthread_key_delete() function may fail if:
EINVAL The
key value is invalid.
The
pthread_key_delete() function will not return an error code of
EINTR.
ATTRIBUTES
See
attributes(7) for descriptions of the following attributes:
+--------------------+-----------------+
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
+--------------------+-----------------+
|Interface Stability | Standard |
+--------------------+-----------------+
|MT-Level | MT-Safe |
+--------------------+-----------------+
SEE ALSO
pthread_key_create(3C),
attributes(7),
standards(7) March 23, 2005 PTHREAD_KEY_DELETE(3C)