NAME
pptthhrreeaaddaattttrriinniitt, pptthhrreeaaddaattttrrddeessttrrooyy, pptthhrreeaaddaattttrrsseettssttaacckkssiizzee, pptthhrreeaaddaattttrrggeettssttaacckkssiizzee, pptthhrreeaaddaattttrrsseettssttaacckkaaddddrr, pptthhrreeaaddaattttrrggeettssttaacckkaaddddrr, pptthhrreeaaddaattttrrsseettddeettaacchhssttaattee, pptthhrreeaaddaattttrrggeettddeettaacchhssttaattee, pptthhrreeaaddaattttrrsseettiinnhheerriittsscchheedd, pptthhrreeaaddaattttrrggeettiinnhheerriittsscchheedd, pptthhrreeaaddaattttrrsseettsscchheeddppaarraamm, pptthhrreeaaddaattttrrggeettsscchheeddppaarraamm, pptthhrreeaaddaattttrrsseettsscchheeddppoolliiccyy, pptthhrreeaaddaattttrrggeettsscchheeddppoolliiccyy, pptthhrreeaaddaattttrrsseettssccooppee, pptthhrreeaaddaattttrrggeettssccooppee- thread attribute operations
SYNOPSIS
##iinncclluuddee <
int pptthhrreeaaddaattttrriinniitt(pthreadattrt *attr); int pptthhrreeaaddaattttrrddeessttrrooyy(pthreadattrt *attr); int pptthhrreeaaddaattttrrsseettssttaacckkssiizzee(pthreadattrt *attr, sizet stacksize); int pptthhrreeaaddaattttrrggeettssttaacckkssiizzee(const pthreadattrt *attr, sizet *stacksize); int pptthhrreeaaddaattttrrsseettssttaacckkaaddddrr(pthreadattrt *attr, void *stackaddr); int pptthhrreeaaddaattttrrggeettssttaacckkaaddddrr(const pthreadattrt *attr, void **stackaddr); int pptthhrreeaaddaattttrrsseettddeettaacchhssttaattee(pthreadattrt *attr, int detachstate); int pptthhrreeaaddaattttrrggeettddeettaacchhssttaattee(const pthreadattrt *attr, int *detachstate); int pptthhrreeaaddaattttrrsseettiinnhheerriittsscchheedd(pthreadattrt *attr, int inheritsched); int pptthhrreeaaddaattttrrggeettiinnhheerriittsscchheedd(const pthreadattrt *attr, int *inheritsched); int pptthhrreeaaddaattttrrsseettsscchheeddppaarraamm(pthreadattrt *attr, const struct schedparam *param); int pptthhrreeaaddaattttrrggeettsscchheeddppaarraamm(const pthreadattrt *attr, struct schedparam *param); int pptthhrreeaaddaattttrrsseettsscchheeddppoolliiccyy(pthreadattrt *attr, int policy); int pptthhrreeaaddaattttrrggeettsscchheeddppoolliiccyy(const pthreadattrt *attr, int *policy); int pptthhrreeaaddaattttrrsseettssccooppee(pthreadattrt *attr, int contentionscope); int pptthhrreeaaddaattttrrggeettssccooppee(const pthreadattrt *attr, int *contentionscope);> DESCRIPTION
Thread attributes are used to specify parameters to pptthhrreeaaddccrreeaattee(). One attribute object can be used in multiple calls to pptthhrreeaaddccrreeaattee(), with or without modifications between calls. The pptthhrreeaaddaattttrriinniitt() function initializes attr with all the default thread attributes. The pptthhrreeaaddaattttrrddeessttrrooyy() function destroys attr. The pptthhrreeaaddaattttrrsseett**() functions set the attribute that corresponds to each function name. The pptthhrreeaaddaattttrrggeett**() functions copy the value of the attribute thatcorresponds to each function name to the location pointed to by the sec-
ond function parameter.RETURN VALUES
If successful, these functions return 0. Otherwise, an error number is returned to indicate the error. EERRRROORRSS pptthhrreeaaddaattttrriinniitt() will fail if: [ENOMEM] Out of memory. pptthhrreeaaddaattttrrddeessttrrooyy() will fail if: [EINVAL] Invalid value for attr. pptthhrreeaaddaattttrrsseettssttaacckkssiizzee() will fail if: [EINVAL] stacksize is less than PTHREADSTACKMIN. pptthhrreeaaddaattttrrsseettddeettaacchhssttaattee() will fail if: [EINVAL] Invalid value for detachstate. pptthhrreeaaddaattttrrsseettiinnhheerriittsscchheedd() will fail if: [EINVAL] Invalid value for attr. pptthhrreeaaddaattttrrsseettsscchheeddppaarraamm() will fail if: [EINVAL] Invalid value for attr. [ENOTSUP] Invalid value for param. pptthhrreeaaddaattttrrsseettsscchheeddppoolliiccyy() will fail if: [EINVAL] Invalid value for attr. [ENOTSUP] Invalid or unsupported value for policy. pptthhrreeaaddaattttrrsseettssccooppee() will fail if: [EINVAL] Invalid value for attr. [ENOTSUP] Invalid or unsupported value for contentionscope.SEE ALSO
pthreadcreate(3) STANDARDS pptthhrreeaaddaattttrriinniitt(), pptthhrreeaaddaattttrrddeessttrrooyy(), pptthhrreeaaddaattttrrsseettssttaacckkssiizzee(), pptthhrreeaaddaattttrrggeettssttaacckkssiizzee(), pptthhrreeaaddaattttrrsseettssttaacckkaaddddrr(), pptthhrreeaaddaattttrrggeettssttaacckkaaddddrr(), pptthhrreeaaddaattttrrsseettddeettaacchhssttaattee(), andpptthhrreeaaddaattttrrggeettddeettaacchhssttaattee() conform to ISO/IEC 9945-1:1996
(``POSIX.1'') pptthhrreeaaddaattttrrsseettiinnhheerriittsscchheedd(), pptthhrreeaaddaattttrrggeettiinnhheerriittsscchheedd(), pptthhrreeaaddaattttrrsseettsscchheeddppaarraamm(), pptthhrreeaaddaattttrrggeettsscchheeddppaarraamm(), pptthhrreeaaddaattttrrsseettsscchheeddppoolliiccyy(), pptthhrreeaaddaattttrrggeettsscchheeddppoolliiccyy(), pptthhrreeaaddaattttrrsseettssccooppee(), and pptthhrreeaaddaattttrrggeettssccooppee() conform to Version 2 of the Single UNIX Specification (``SUSv2'') BSD April 28, 2000 BSD