pthread_getconcurrency(3T)pthread_getconcurrency(3T)NAMEpthread_getconcurrency(), pthread_setconcurrency() - get or set the
concurrency level of unbound threads
SYNOPSISPARAMETERS
new_level New concurrency level for the unbound threads in the
calling process.
DESCRIPTION
The unbound threads in a process may or may not be required to be
simultaneously active. By default, the threads implementation ensures
that a sufficient number of threads are active so that the process can
continue to make progress. While this conserves system resources, it
may not produce the most effective level of concurrency. The function
allows an application to inform the threads implementation of its
desired concurrency level, new_level. The actual level of concurrency
provided by the system as a result of this function call is unspeci‐
fied.
If new_level is zero, it will cause the implementation to maintain the
concurrency level at its discretion as if were never called.
The function returns the value set by a previous call to If the func‐
tion was not previously called, this function returns zero to indicate
that the system is maintaining the concurrency level.
Note: When an application calls it is informing the implementation of
its desired concurrency level. The implementation will use this as a
hint, not a requirement. A call to immediately after a call to may
return a different concurrency level specified in
If the system does not support the multiplexing of user threads on top
of several kernel-scheduled entities, the functions and functions will
be provided for source code compatibility, but they shall have no
effect when called. To maintain the function semantics, the new_level
parameter will be saved when is called so that a subsequent call to
will return the same value.
RETURN VALUE
If successful, returns zero. Otherwise, an error number is returned to
indicate the error (the variable is not set).
The function always returns the concurrency level set by a previous
call to If the function has never been called, shall return zero.
ERRORS
If any of the following occur, the function shall return the corre‐
sponding error number.
[EINVAL] The value specified by new_level is invalid.
[EAGAIN] The value specified by new_level would cause a
system resource to be exceeded.
APPLICATION USAGE
Use of these functions changes the state of the underlying concurrency
level upon which the application depends. Library developers are
advised to not use the and functions as their use may conflict with an
applications use of these functions.
AUTHOR
and were developed by X/Open.
SEE ALSOpthread_num_processors_np(3T), pthread_processor_bind_np(3T),
pthread_processor_id_np(3T).
STANDARDS CONFORMANCE
Pthread Library pthread_getconcurrency(3T)