pthread_setconcurrency(3) - phpMan

PTHREAD_SETCONCURRENCY(3)  Linux Programmer's Manual PTHREAD_SETCONCURRENCY(3)

NAME
       pthread_setconcurrency,  pthread_getconcurrency  -  set/get the concur-
       rency level
SYNOPSIS
       #include <pthread.h>
       int pthread_setconcurrency(int new_level);
       int pthread_getconcurrency(void);
       Compile and link with -pthread.
DESCRIPTION
       The pthread_setconcurrency() function informs the implementation of the
       application's  desired  concurrency level, specified in new_level.  The
       implementation takes this only as a hint: POSIX.1 does not specify  the
       level  of  concurrency  that  should be provided as a result of calling
       pthread_setconcurrency().
       Specifying new_level as 0 instructs the implementation  to  manage  the
       concurrency level as it deems appropriate.
       pthread_getconcurrency()  returns  the current value of the concurrency
       level for this process.
RETURN VALUE
       On success, pthread_setconcurrency() returns 0; on error, it returns  a
       nonzero error number.
       pthread_getconcurrency()  always  succeeds,  returning  the concurrency
       level set by a previous call  to  pthread_setconcurrency(),  or  0,  if
       pthread_setconcurrency() has not previously been called.
ERRORS
       pthread_setconcurrency() can fail with the following error:
       EINVAL new_level is negative.
       POSIX.1-2001  also  documents  an EAGAIN error ("the value specified by
       new_level would cause a system resource to be exceeded").
VERSIONS
       These functions are available in glibc since version 2.1.
CONFORMING TO
       POSIX.1-2001.
NOTES
       The default concurrency level is 0.
       Concurrency levels are meaningful only for  M:N  threading  implementa-
       tions,  where  at  any moment a subset of a process's set of user-level
       threads may be bound to a smaller number of kernel-scheduling entities.
       Setting the concurrency level allows the application to give the system
       a hint as to the number of kernel-scheduling entities  that  should  be
       provided for efficient execution of the application.
       Both  LinuxThreads  and NPTL are 1:1 threading implementations, so set-
       ting the concurrency level has no meaning.  In other  words,  on  Linux
       these  functions merely exist for compatibility with other systems, and
       they have no effect on the execution of a program.
SEE ALSO
       pthread_attr_setscope(3), pthreads(7)
COLOPHON
       This page is part of release 3.53 of the Linux  man-pages  project.   A
       description  of  the project, and information about reporting bugs, can
       be found at http://www.kernel.org/doc/man-pages/.

Linux                             2009-04-10         PTHREAD_SETCONCURRENCY(3)