Open System Services System Calls Reference Manual (G06.29+, H06.08+, J06.03+)
pthread_attr_getguardsize(2) OSS System Calls Reference Manual
NAME
pthread_attr_getguardsize - Obtains the guardsize attribute of a thread attributes object
LIBRARY
32-bit H-series and J-series OSS processes: /G/system/zdllnnn/zputdll
64-bit H-series and J-series OSS processes: /G/system/zdllnnn/yputdll
SYNOPSIS
#include <pthread.h>
int pthread_attr_getguardsize(
const pthread_attr_t *attr,
size_t *guardsize);
PARAMETERS
attr Specifies the address of the thread attributes object whose guardsize attribute is
obtained.
guardsize Receives the value of the guardsize attribute.
DESCRIPTION
The pthread_attr_getguardsize function obtains the value of the guardsize attribute of the
thread attributes object specified by the attr parameter and returns it in the guardsize parameter.
The specified thread attributes object must already be initialized when this function called. The
value returned for the guardsize parameter is either the guard size specified by the previous
pthread_attr_setguardsize function call if there was one, or the default guard size.
When creating a thread, use a thread attributes object to specify nondefault values for thread
attributes. The guardsize attribute of a thread attributes object specifies the minimum size (in
bytes) of the guard area for the stack of a new thread.
A guard area can help a multi-threaded program detect overflow of a thread’s stack. A guard
area is a region of no-access memory that the system allocates at the overflow end of the thread’s
stack. When any thread attempts to access a memory location within this region, a memory
addressing violation occurs.
To use this function in a threaded application that uses the POSIX User Thread Model library on
systems running H06.21 or later RVUs or J06.10 or later RVUs, you must perform all of the fol-
lowing tasks:
• Include the pthread.h header file in the application.
• Compile the application using the _PUT_MODEL_ feature test macro or equivalent
compiler command option.
• Link the application to the zputdll library (/G/system/zdllnnn/zputdll).
On systems running H06.24 or later H-series RVUs or J06.13 or later J-series RVUs, you can use
the POSIX User Thread Model library with 32-bit or 64-bit threaded applications.
To use this function in a 32-bit threaded application that uses the POSIX User Thread Model
library on systems running H06.24 or later RVUs or J06.13 or later RVUs, perform the same
tasks (described above) used to enable the POSIX User Thread Model library on systems running
H06.21/J06.10 or later RVUs.
To use this function in a 64-bit threaded application that uses the POSIX User Thread Model
library on systems running H06.24 or later RVUs or J06.13 or later RVUs, you must perform all
of the following tasks:
5−36 Hewlett-Packard Company 527186-023