Documentation Archive Developer
Search
ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages

 

This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles.

For more information about the manual page format, see the manual page for manpages(5).



PTHREAD_ATTR(3)          BSD Library Functions Manual          PTHREAD_ATTR(3)

NAME
     pthread_attr_destroy, pthread_attr_getdetachstate,
     pthread_attr_getinheritsched, pthread_attr_getschedparam,
     pthread_attr_getschedpolicy, pthread_attr_getscope,
     pthread_attr_getstackaddr, pthread_attr_getstacksize, pthread_attr_init,
     pthread_attr_setdetachstate, pthread_attr_setinheritsched,
     pthread_attr_setschedparam, pthread_attr_setschedpolicy,
     pthread_attr_setscope, pthread_attr_setstackaddr,
     pthread_attr_setstacksize -- thread attribute operations

SYNOPSIS
     #include <pthread.h>

     int
     pthread_attr_destroy(pthread_attr_t *attr);

     int
     pthread_attr_getdetachstate(const pthread_attr_t *attr,
         int *detachstate);

     int
     pthread_attr_getinheritsched(const pthread_attr_t *restrict attr,
         int *restrict inheritsched);

     int
     pthread_attr_getschedparam(const pthread_attr_t *restrict attr,
         struct sched_param *restrict param);

     int
     pthread_attr_getschedpolicy(const pthread_attr_t *restrict attr,
         int *restrict policy);

     int
     pthread_attr_getscope(const pthread_attr_t *restrict attr,
         int *restrict contentionscope);

     int
     pthread_attr_getstackaddr(const pthread_attr_t *restrict attr,
         void **restrict stackaddr);

     int
     pthread_attr_getstacksize(const pthread_attr_t *restrict attr,
         size_t *restrict stacksize);

     int
     pthread_attr_init(pthread_attr_t *attr);

     int
     pthread_attr_setdetachstate(pthread_attr_t *attr, int detachstate);

     int
     pthread_attr_setinheritsched(pthread_attr_t *attr, int inheritsched);

     int
     pthread_attr_setschedparam(pthread_attr_t *restrict attr,
         const struct sched_param *restrict param);

     int
     pthread_attr_setschedpolicy(pthread_attr_t *attr, int policy);

     int
     pthread_attr_setscope(pthread_attr_t *attr, int contentionscope);

     int
     pthread_attr_setstackaddr(pthread_attr_t *attr, void *stackaddr);

     int
     pthread_attr_setstacksize(pthread_attr_t *attr, size_t stacksize);

DESCRIPTION
     Thread attributes are used to specify parameters to pthread_create().
     One attribute object can be used in multiple calls to pthread_create(),
     with or without modifications between calls.

     The pthread_attr_init() function initializes attr with all the default
     thread attributes.

     The pthread_attr_destroy() function destroys attr.

     The pthread_attr_set*() functions set the attribute that corresponds to
     each function name.

     The pthread_attr_get*() functions copy the value of the attribute that
     corresponds to each function name to the location pointed to by the sec-ond second
     ond function parameter.

RETURN VALUES
     If successful, these functions return 0.  Otherwise, an error number is
     returned to indicate the error.

ERRORS
     pthread_attr_init() will fail if:

     [ENOMEM]           Out of memory.

     pthread_attr_destroy() will fail if:

     [EINVAL]           Invalid value for attr.

     pthread_attr_setstacksize() will fail if:

     [EINVAL]           Invalid value for attr.

     [EINVAL]           stacksize is less than PTHREAD_STACK_MIN.

     [EINVAL]           stacksize is not a multiple of the system page size.

     pthread_attr_setdetachstate() will fail if:

     [EINVAL]           Invalid value for attr or detachstate.

     pthread_attr_setinheritsched() will fail if:

     [EINVAL]           Invalid value for attr.

     pthread_attr_setschedparam() will fail if:

     [EINVAL]           Invalid value for attr.

     [ENOTSUP]          Invalid value for param.

     pthread_attr_setschedpolicy() will fail if:

     [EINVAL]           Invalid value for attr.

     [ENOTSUP]          Invalid or unsupported value for policy.

     pthread_attr_setscope() will fail if:

     [EINVAL]           Invalid value for attr.

     [ENOTSUP]          Invalid or unsupported value for contentionscope.

SEE ALSO
     pthread_create(3)

STANDARDS
     pthread_attr_init(), pthread_attr_destroy(), pthread_attr_setstacksize(),
     pthread_attr_getstacksize(), pthread_attr_setstackaddr(),
     pthread_attr_getstackaddr(), pthread_attr_setdetachstate(), and
     pthread_attr_getdetachstate() conform to ISO/IEC 9945-1:1996
     (``POSIX.1'')

     pthread_attr_setinheritsched(), pthread_attr_getinheritsched(),
     pthread_attr_setschedparam(), pthread_attr_getschedparam(),
     pthread_attr_setschedpolicy(), pthread_attr_getschedpolicy(),
     pthread_attr_setscope(), and pthread_attr_getscope() conform to Version 2
     of the Single UNIX Specification (``SUSv2'')

BSD                             April 28, 2000                             BSD