pthread_attr_setstackprealloc()
Set the amount of memory to preallocate for a thread's MAP_LAZY stack
Synopsis:
#include <pthread.h> int pthread_attr_setstackprealloc( const pthread_attr_t * attr, size_t stacksize);
Arguments:
- attr
- A pointer to the pthread_attr_t structure that defines the attributes to use when creating new threads. For more information, see pthread_attr_init() .
- stacksize
- The amount of stack you want to preallocate for new threads.
Library:
libc
Use the -l c option to qcc to link against this library. This library is usually included automatically.
Description:
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.
Returns:
- EOK
- Success.
Classification:
Safety: | |
---|---|
Cancellation point | No |
Interrupt handler | No |
Signal handler | Yes |
Thread | Yes |