Standard C Library Functions pthreadattrgetstack(3C)
NAME
pthreadattrgetstack, pthreadattrsetstack - get or set
stack attributes
SYNOPSIS
cc -mt [ flag... ] file... -lpthread [ library... ]
#include
int pthreadattrgetstack(const pthreadattrt *restrict attr,
void **restrict stackaddr, sizet *restrict stacksize);
int pthreadattrsetstack(pthreadattrt * attr, void *stackaddr,
sizet stacksize);
DESCRIPTION
The pthreadattrgetstack() and pthreadattrsetstack()
functions, respectively, get and set the thread creation
stack attributes stackaddr and stacksize in the attr object.
The stack attributes specify the area of storage to be used
for the created thread's stack. The base (lowest addressable
byte) of the storage is stackaddr, and the size of the
storage is stacksize bytes. The stacksize argument must be
at least {PTHREADSTACKMIN}. The stackaddr argument must be
aligned appropriately to be used as a stack; for example,
pthreadattrsetstack() might fail with EINVAL if (stackaddr
& 0x7) is not 0. All pages within the stack described by
stackaddr and stacksize are both readable and writable by
the thread.
RETURN VALUES
Upon successful completion, these functions return a 0; oth-
erwise, an error number is returned to indicate the error.
The pthreadattrgetstack() function stores the stack attri-
bute values in stackaddr and stacksize if successful.
ERORS
The pthreadattrsetstack() function will fail if:
EINVAL The value of stacksize is less than
{PTHREADSTACKMIN}.
The pthreadattrsetstack() function may fail if:
SunOS 5.11 Last change: 23 Mar 2005 1
Standard C Library Functions pthreadattrgetstack(3C)
EACES The stack page(s) described by stackaddr and
stacksize are not both readable and writable by
the thread.
EINVAL The value of stackaddr does not have proper align-
ment to be used as a stack, or (stackaddr ] stack-
size) lacks proper alignment.
USAGE
These functions are appropriate for use by applications in
an environment where the stack for a thread must be placed
in some particular region of memory.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Standard
MT-Level Async-Signal-Safe
SEE ALSO
pthreadattrinit(3C), pthreadattrsetdetachstate(3C),
pthreadattrsetstacksize(3C), pthreadcreate(3C), attri-
butes(5)
SunOS 5.11 Last change: 23 Mar 2005 2
|