Set the amount of memory to preallocate for a thread's MAP_LAZY stack
#include <pthread.h> int pthread_attr_setstackprealloc( const pthread_attr_t * attr, size_t stacksize);
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
The pthread_attr_setstackprealloc() function sets the size of the memory to preallocate for a thread's MAP_LAZY stack.
By default, the system allocates sysconf(_SC_PAGESIZE) bytes of physical memory for the initial stack reference. This function allows you to change this default memory size, if you know that a thread will need more stack space. Semantically, there is no difference in operation, but the memory manager attempts to make more efficient use of Memory Management Unit hardware (e.g. a larger page size in the page entry table) for the stack if it knows upfront that more memory will be required.
This function was added in the QNX Neutrino Core OS 6.3.2. |
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | No |
Signal handler | Yes |
Thread | Yes |
pthread_attr_getstackprealloc(), pthread_attr_getstacksize(), pthread_attr_init(), pthread_create()