NAME
pthread_default_rsestacksize_np() — change the default stacksize.
SYNOPSIS
#include <pthread.h>
int pthread_default_rsestacksize_np(
size_t new_size,
size_t *old_size
);
PARAMETERS
- new_size
The new default register stack size.
- old_size
Pointer to where the old default register stack size is returned.
DESCRIPTION
The
pthread_default_rsestacksize_np()
function allows an application to change the default value for the
rsestacksize
attribute.
This function must be called before any threads have been created.
The new default stack size is passed in the
new_size
parameter.
If not
NULL,
the previous default stack size is returned in
old_size.
If
new_size
is zero, this function can be used (at any time) to query the current
default stack size.
On HP-UX, threads with default stack sizes are cached after they terminate.
The next time a thread is created with a default stack size, a cached
thread (and its stack) are reused.
This can result in significant performance improvements for
pthread_create().
However, if the default register stack size is not appropriate for an
application, it cannot take advantage of this performance enhancement.
By using the
pthread_default_rsestacksize_np()
function, the threads library will change
the default stack size so that it matches the applications needs.
This allows the application to utilize the performance benefit of
cached threads.
If either of the set register stack size APIs is called
(pthread_default_rsestacksize_np(),
pthread_attr_setrsestacksize())
the register stack portion of the stack space will be that large instead
of size determined by the implementation.
The memory stack portion will be the remainder.
RETURN VALUE
Upon successful completion,
pthread_default_rsestacksize_np()
returns zero. Otherwise, an error number is returned to indicate the error
(the
errno
variable is not set).
ERRORS
If any of the following occur, the
pthread_default_rsestacksize_np()
function returns the corresponding error number:
- EINVAL
The value specified by
new_size
is less than
register stack required for a thread.
- EPERM
The calling process has already created threads (this must be called
before any threads are created).
AUTHOR
pthread_default_rsestacksize_np()
was developed by HP.
STANDARDS CONFORMANCE
pthread_default_rsestacksize_np(): None.