Manual Page Result
0
Command: pthread_setschedparam | Section: 3 | Source: Digital UNIX | File: pthread_setschedparam.3.gz
pthread_setschedparam(3) Library Functions Manual pthread_setschedparam(3)
NAME
pthread_setschedparam - Changes a thread's scheduling policy and sched-
uling parameters.
LIBRARY
DECthreads POSIX 1003.1c Library (libpthread.so)
SYNOPSIS
#include <pthread.h>
int pthread_setschedparam(
pthread_t thread,
int policy,
const struct sched_param *param);
STANDARDS
Interfaces documented on this reference page conform to industry stan-
dards as follows:
IEEE Std 1003.1c-1995, POSIX System Application Program Interface
PARAMETERS
Thread whose scheduling policy and parameters are to be changed. New
scheduling policy value for the thread specified in thread. The fol-
lowing are valid values: SCHED_BG_NP SCHED_FG_NP SCHED_FIFO SCHED_OTHER
SCHED_RR See Guide to DECthreads for a description of the scheduling
policies. New values of the scheduling parameters associated with the
scheduling policy for the thread specified in thread. Valid values for
the sched_priority field of a sched_param structure depend on the cho-
sen scheduling policy. Use the POSIX routines sched_get_priority_min(3)
or sched_get_priority_max(3) to determine the low and high limits of
each policy. Additionally, DECthreads provides nonportable priority
range constants, as follows: PRI_FIFO_MIN (low) to PRI_FIFO_MAX (high)
PRI_RR_MIN (low) to PRI_RR_MAX (high) PRI_OTHER_MIN (low) to
PRI_OTHER_MAX (high) PRI_FG_MIN_NP (low) to PRI_FG_MAX_NP (high)
PRI_BG_MIN_NP (low) to PRI_BG_MAX_NP (high) The default priority varies
by DECthreads platform. On DIGITAL UNIX, the default is 19 (that is,
the POSIX priority of a normal timeshare process). On other platforms
the default priority is the midpoint between PRI_FG_MIN_NP and
PRI_FG_MAX_NP.
DESCRIPTION
This routine changes both the current scheduling policy and associated
scheduling parameters of the thread specified by thread to the policy
and associated parameters provided in policy and param, respectively.
All currently implemented DECthreads scheduling policies have one
scheduling parameter called sched_priority. For the policy you choose,
you must specify an appropriate value in the sched_priority field of
the sched_param structure.
Changing the scheduling policy or priority, or both, of a thread can
cause it to start executing or to be preempted by another thread. A
thread changes its own scheduling policy and priority by using the han-
dle returned by the pthread_self(3) routine.
This routine differs from pthread_attr_setschedpolicy(3) and
pthread_attr_setschedparam(3), in that those routines set the schedul-
ing policy and parameter attributes that are used to establish the
scheduling priority and scheduling policy of a new thread when it is
created. However, this routine changes the scheduling policy and para-
meters of an existing thread.
RETURN VALUES
If an error condition occurs, no scheduling policy or parameters are
changed for the target thread, and this routine returns an integer
value indicating the type of error. Possible return values are as fol-
lows: Successful completion. The value specified by policy or param is
invalid. An attempt was made to set the scheduling policy or a parame-
ter to an unsupported value. The caller does not have the appropriate
privileges to set the scheduling policy or parameters of the specified
thread. The value specified by thread does not refer to an existing
thread.
ERRORS
None
RELATED INFORMATION
Functions: pthread_attr_setschedparam(3), pthread_attr_setschedpol-
icy(3), pthread_create(3), pthread_self(3), sched_yield(3)
Manuals: Guide to DECthreads and Programmer's Guide
delim off
pthread_setschedparam(3)