[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]

Technical Reference: Base Operating System and Extensions, Volume 1


pthread_attr_setstacksize Subroutine

Purpose

Sets the value of the stacksize attribute of a thread attributes object.

Library

Threads Library (libpthreads.a)

Syntax

#include <pthread.h>


int pthread_attr_setstacksize ( attr, stacksize)
pthread_attr_t *attr;
size_t stacksize;

Description

The pthread_attr_setstacksize subroutine sets the value of the stacksize attribute of the thread attributes object attr. This attribute specifies the minimum stack size, in bytes, of a thread created with this attributes object.

The allocated stack size is always a multiple of 8K bytes, greater or equal to the required minimum stack size of 56K bytes (PTHREAD_STACK_MIN). The following formula is used to calculate the allocated stack size: if the required stack size is lower than 56K bytes, the allocated stack size is 56K bytes; otherwise, if the required stack size belongs to the range from (56 + (- 1) * 16) K bytes to (56 + * 16) K bytes, the allocated stack size is (56 + * 16) K bytes.

Note: The pthread.h header file must be the first included file of each source file using the threads library. Otherwise, the -D_THREAD_SAFE compilation flag should be used, or the cc_r compiler used. In this case, the flag is automatically set.

Parameters


attr Specifies the thread attributes object.
stacksize Specifies the minimum stack size, in bytes, to set. The default stack size is PTHREAD_STACK_MIN. The minimum stack size should be greater or equal than this value.

Return Values

Upon successful completion, 0 is returned. Otherwise, an error code is returned.

Error Codes

The pthread_attr_setstacksize subroutine is unsuccessful if the following is true:

EINVAL The attr parameter is not valid, or the value of the stacksize parameter exceeds a system imposed limit.
ENOSYS The stack size POSIX option is not implemented.

Implementation Specifics

This subroutine is part of the Base Operating System (BOS) Runtime.

Related Information

The pthread_attr_getstacksize (pthread_attr_getstacksize Subroutine) subroutine, pthread_attr_init (pthread_attr_init Subroutine) subroutine, pthread_create (pthread_create Subroutine) subroutine, the pthread.h file.

Advanced Attributes in AIX 5L Version 5.1 General Programming Concepts: Writing and Debugging Programs.

Threads Library Options and Threads Library Quick Reference in AIX 5L Version 5.1 General Programming Concepts: Writing and Debugging Programs.


[ Previous | Next | Table of Contents | Index | Library Home | Legal | Search ]