NAME
pthread_attr_get_np —
get attributes of
existing thread
LIBRARY
POSIX Threads Library (libpthread, -lpthread)
SYNOPSIS
#include <pthread.h>
int
pthread_attr_get_np(
pthread_t
thread,
pthread_attr_t
*attr);
int
pthread_getattr_np(
pthread_t
thread,
pthread_attr_t
*attr);
DESCRIPTION
The
pthread_attr_get_np() and
pthread_getattr_np() functions can be used to retrieve
attributes of a running
thread. The result is stored to
attr.
For
pthread_attr_get_np()
attr should be
initialized prior to the call by using
pthread_attr_init(3).
pthread_getattr_np() does this automatically.
For both functions
attr should be freed when it is not in
use anymore with
pthread_attr_destroy(3).
Most fields of
attr are the same ones provided during
thread creation time as a parameter to
pthread_create(3). The
exceptions include:
- The detach state -- a joinable thread may have detached
itself after the creation.
- The guard size, which may vary if the application has
allocated its own thread stack.
- The stack address and size;
pthread_attr_get_np() will always return the thread's
real stack address and size, regardless of the values in the original
attributes structure.
The returned
pthread_attr_t structure is supposed to be
used in conjunction with the
pthread_attr_get*() functions
to retrieve individual values from the structure. When the returned
attr is no longer needed, it should be destroyed by
using
pthread_attr_destroy(3).
RETURN VALUES
Upon successful completion,
pthread_attr_get_np() and
pthread_getattr_np() return 0. Otherwise an error number is
returned to indicate the error.
COMPATIBILITY
The
pthread_attr_get_np() and
pthread_getattr_np() functions are non-standard extensions.
ERRORS
The
pthread_attr_get_np() and
pthread_getattr_np() functions will fail if:
-
-
- [
ENOMEM
]
- Insufficient memory.
-
-
- [
ESRCH
]
- Non-existent thread.
SEE ALSO
pthread(3),
pthread_attr(3)