pthread_attr_setscope Subroutine



Purpose

Sets the value of the contention-scope attribute of a thread attributes
object.

Library

Threads Library (libpthreads.a)

Syntax

#include 

int pthread_attr_setscope (attr, scope)
pthread_attr_t *attr;
int scope;

Description

The pthread_attr_setscope subroutine sets the value of the contention-scope
attribute of the thread attributes object attr. This attribute specifies
the contention scope of a thread created with this attributes object.

Note:	The pthread.h header file must be the first included file of
each source file using the threads library.

Parameters

attr	Specifies the thread attributes object.

scope	Specifies the contention scope to set. It must have one of the
following values:

PTHREAD_SCOPE_PROCESS	Specifies local contention scope; the thread
will be scheduled against other local contention scope threads in
the same process.

PTHREAD_SCOPE_SYSTEM	Specifies global contention scope; the thread
will be scheduled against all other threads. This is the default value.

Return Values

Upon successful completion, 0 is returned. Otherwise, an error code
is returned.

Error Codes

The pthread_attr_setscope subroutine is unsuccessful if the following
is true:

EINVAL	The attr parameter is not valid.

ENOSYS	The priority scheduling POSIX option is not implemented.

ENOTSUP	The value of the scope parameter is not supported.

Implementation Specifics

This subroutine is part of the Base Operating System (BOS) Runtime.

The implementation of this subroutine is dependent on the priority
scheduling POSIX option. The priority scheduling POSIX option is implemented
in AIX, but in the current version all threads have system contention
scope; therefore there is no need to use this subroutine, since only
the scope value of PTHREAD_SCOPE_SYSTEM is supported.

Related Information

The pthread_attr_getscope subroutine, pthread_attr_init subroutine,
pthread_create subroutine.

Threads Scheduling.

Threads Library Options and Threads Library Quick Reference.