pthread_attr_setstacksize(3) - Linux man page
Name
pthread_attr_setstacksize, pthread_attr_getstacksize - set/get stack size attribute in thread attributes objectSynopsis
#include <pthread.h>int pthread_attr_setstacksize(pthread_attr_t *attrsize_t " stacksize ); int pthread_attr_getstacksize(pthread_attr_t *attrsize_t *" stacksize ); Compile and link with -pthread.
Description
The stack size attribute determines the minimum size (in bytes) that will be allocated for threads created using the thread attributes object attr.
The pthread_attr_getstacksize() function returns the stack size attribute of the thread attributes object referred to by attr in the buffer pointed to by stacksize.
Return Value
On success, these functions return 0; on error, they return a nonzero error number.Errors
pthread_attr_setstacksize() can fail with the following error:- EINVAL
- The stack size is less than PTHREAD_STACK_MIN (16384) bytes.
On some systems, pthread_attr_setstacksize() can fail with the error EINVAL if stacksize is not a multiple of the system page size.
Versions
These functions are provided by glibc since version 2.1.Conforming to
POSIX.1-2001.Notes
For details on the default stack size of new threads, see pthread_create(3).A thread's stack size is fixed at the time of thread creation. Only the main thread can dynamically grow its stack.
The pthread_attr_setstack(3) function allows an application to set both the size and location of a caller-allocated stack that is to be used by a thread.