Copyright Digital Equipment Corp. All rights reserved.

Description

   This routine uses the value specified in the scope argument
   to set the contention scope attribute of the thread attributes
   object specified in the attr argument.

   When creating a thread, use a thread attributes object to specify
   nondefault values for thread attributes. The contention scope
   attribute specifies the set of threads with which a thread must
   compete for processing resources. The contention scope attribute
   specifies whether the new thread competes for processing
   resources only with other threads in its own process, called
   process contention scope, or with all threads on the system,
   called system contention scope.

   The Threads Library selects at most one thread to execute on
   each processor at any point in time. The Threads Library resolves
   the contention based on each thread's scheduling attributes (for
   example, priority) and scheduling policy (for example, round-
   robin).

   A thread created using a thread attributes object whose
   contention scope attribute is set to PTHREAD_SCOPE_PROCESS
   contends for processing resources with other threads within its
   own process that also were created with PTHREAD_SCOPE_PROCESS. It
   is unspecified how such threads are scheduled relative to either
   threads in other processes or threads in the same process that
   were created with PTHREAD_SCOPE_SYSTEM contention scope.

   A thread created using a thread attributes object whose
   contention scope attribute is set to PTHREAD_SCOPE_SYSTEM
   contends for processing resources with other threads in any
   process that also were created with PTHREAD_SCOPE_SYSTEM.

   Note that the value of the contention scope attribute of a
   particular thread attributes object does not necessarily
   correspond to the actual scheduling contention scope of any
   existing thread in your multithreaded program.