VMS Help  —  POSIX Threads, PTHREAD routines, pthread_attr_setstacksize
    Changes the stacksize attribute in the specified thread
    attributes object.

1  –  C Binding

    #include <pthread.h>

    int
    pthread_attr_setstacksize (
             pthread_attr_t   *attr,
             size_t   stacksize);

2  –  Arguments

 attr

    Threads attributes object to be modified.

 stacksize

    New value for the stacksize attribute of the thread attributes
    object specified by the attr argument. The stacksize argument
    must be greater than or equal to PTHREAD_STACK_MIN. PTHREAD_
    STACK_MIN specifies the minimum size (in bytes) of the stack
    needed for a thread.

3  –  Description

    This routine sets the stacksize attribute in the thread
    attributes object specified by the attr argument. Use this
    routine to adjust the size of the writable area of the stack
    for a new thread.

    The size of a thread's stack is fixed at the time of thread
    creation. On OpenVMS systems, only the initial thread can
    dynamically extend its stack. On Tru64 UNIX systems, very large
    stacks can be created, but only a few pages are committed.

    Many compilers do not check for stack overflow. Ensure that the
    new thread's stack is sufficient for the resources required by
    routines that are called from the thread.

4  –  Return Values

    If an error condition occurs, this routine returns an integer
    value indicating the type of error. Possible return values are as
    follows:

    Return      Description

    0           Successful completion.
    [EINVAL]    The value specified by attr is not a valid thread
                attributes object, or the value specified by
                stacksize either is less than PTHREAD_STACK_MIN or
                exceeds a Threads Library-imposed limit.

5  –  Associated Routines

       pthread_attr_init()
       pthread_attr_getstacksize()
       pthread_create()
Close Help