PTHREAD_ATTR(3) Library Functions Manual PTHREAD_ATTR(3)

pthread_attr_getstacksize, pthread_attr_setstacksizethread attribute operations

#include <pthread.h>

int
pthread_attr_getstacksize(const pthread_attr_t *restrict attr, size_t *restrict stacksize);

int
pthread_attr_setstacksize(pthread_attr_t *attr, size_t stacksize);

Thread attributes are used to specify parameters to (). One attribute object can be used in multiple calls to pthread_create(), with or without modifications between calls.

The functions () and (), respectively, set and get the size of the stack that is to be created for the new thread. The stack size attribute is set within the attr argument, which can subsequently be used as an argument to pthread_create().

If successful, these functions return 0. Otherwise, an error number is returned to indicate the error. pthread_attr_getstacksize() returns the stacksize attribute value in stacksize if successful.

pthread_attr_getstacksize() will fail if:

[]
Invalid value for attr.

pthread_attr_setstacksize() will fail if:

[]
Invalid value for attr.
[]
stacksize is less than PTHREAD_STACK_MIN.
[]
stacksize is not a multiple of the system page size.

pthread_create(3), pthread_attr_init(3), pthread_attr_setstackaddr(3)

pthread_attr_setstacksize(), pthread_attr_getstacksize() conform to ISO/IEC 9945-1:1996 (“POSIX.1”)

December 31, 2007 macOS 14.6