[Previous] [Contents] [Index] [Next]

Caution: This version of this document is no longer maintained. For the latest documentation, see http://www.qnx.com/developers/docs.

pthread_attr_setstackprealloc()

Set the size of memory to preallocate for a 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 stack size you want to preallocate for the new thread.

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 MAP_LAZY stack. By default, the system allocates sysconf(_SC_PAGESIZE) bytes of physical memory for 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.


Note:

This function was added in the QNX Neutrino Core OS 6.3.2.


Returns:

EOK
Success.

Classification:

QNX Neutrino

Safety:
Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes

See also:

pthread_attr_getstackprealloc(), pthread_attr_getstacksize(), pthread_attr_init(), pthread_create()


[Previous] [Contents] [Index] [Next]