The Open Group Base Specifications Issue 6
IEEE Std 1003.1, 2003 Edition
Copyright © 2001-2003 The IEEE and The Open Group, All Rights reserved.

NAME

pthread_attr_getinheritsched, pthread_attr_setinheritsched - get and set the inheritsched attribute (REALTIME THREADS)

SYNOPSIS

[THR TPS] [Option Start] #include <pthread.h>

int pthread_attr_getinheritsched(const pthread_attr_t *restrict
attr,
       int *restrict
inheritsched);
int pthread_attr_setinheritsched(pthread_attr_t *
attr,
       int
inheritsched); [Option End]

DESCRIPTION

The pthread_attr_getinheritsched(), and pthread_attr_setinheritsched() functions, respectively, shall get and set the inheritsched attribute in the attr argument.

When the attributes objects are used by pthread_create(), the inheritsched attribute determines how the other scheduling attributes of the created thread shall be set.

PTHREAD_INHERIT_SCHED

Specifies that the thread scheduling attributes shall be inherited from the creating thread, and the scheduling attributes in this attr argument shall be ignored.
PTHREAD_EXPLICIT_SCHED

Specifies that the thread scheduling attributes shall be set to the corresponding values from this attributes object.

The symbols PTHREAD_INHERIT_SCHED and PTHREAD_EXPLICIT_SCHED are defined in the <pthread.h> header.

The following thread scheduling attributes defined by IEEE Std 1003.1-2001 are affected by the inheritsched attribute: scheduling policy ( schedpolicy), scheduling parameters ( schedparam), and scheduling contention scope ( contentionscope).

RETURN VALUE

If successful, the pthread_attr_getinheritsched() and pthread_attr_setinheritsched() functions shall return zero; otherwise, an error number shall be returned to indicate the error.

ERRORS

The pthread_attr_setinheritsched() function may fail if:

[EINVAL]
The value of inheritsched is not valid.
[ENOTSUP]
An attempt was made to set the attribute to an unsupported value.

These functions shall not return an error code of [EINTR].


The following sections are informative.

EXAMPLES

None.

APPLICATION USAGE

After these attributes have been set, a thread can be created with the specified attributes using pthread_create(). Using these routines does not affect the current running thread.

RATIONALE

None.

FUTURE DIRECTIONS

None.

SEE ALSO

pthread_attr_destroy() , pthread_attr_getscope() , pthread_attr_getschedpolicy() , pthread_attr_getschedparam() , pthread_create() , the Base Definitions volume of IEEE Std 1003.1-2001, <pthread.h>, <sched.h>

CHANGE HISTORY

First released in Issue 5. Included for alignment with the POSIX Threads Extension.

Marked as part of the Realtime Threads Feature Group.

Issue 6

The pthread_attr_getinheritsched() and pthread_attr_setinheritsched() functions are marked as part of the Threads and Thread Execution Scheduling options.

The [ENOSYS] error condition has been removed as stubs need not be provided if an implementation does not support the Thread Execution Scheduling option.

The restrict keyword is added to the pthread_attr_getinheritsched() prototype for alignment with the ISO/IEC 9899:1999 standard.

End of informative text.


UNIX ® is a registered Trademark of The Open Group.
POSIX ® is a registered Trademark of The IEEE.
[ Main Index | XBD | XCU | XSH | XRAT ]