diff options
Diffstat (limited to 'man3p/pthread_getschedparam.3p')
-rw-r--r-- | man3p/pthread_getschedparam.3p | 147 |
1 files changed, 147 insertions, 0 deletions
diff --git a/man3p/pthread_getschedparam.3p b/man3p/pthread_getschedparam.3p new file mode 100644 index 000000000..5cb2812ec --- /dev/null +++ b/man3p/pthread_getschedparam.3p @@ -0,0 +1,147 @@ +.\" Copyright (c) 2001-2003 The Open Group, All Rights Reserved +.TH "PTHREAD_GETSCHEDPARAM" P 2003 "IEEE/The Open Group" "POSIX Programmer's Manual" +.\" pthread_getschedparam +.SH NAME +pthread_getschedparam, pthread_setschedparam \- dynamic thread scheduling +parameters access (\fBREALTIME +THREADS\fP) +.SH SYNOPSIS +.LP +\fB#include <pthread.h> +.br +.sp +int pthread_getschedparam(pthread_t\fP \fIthread\fP\fB, int *restrict\fP +\fIpolicy\fP\fB, +.br +\ \ \ \ \ \ struct sched_param *restrict\fP \fIparam\fP\fB); +.br +int pthread_setschedparam(pthread_t\fP \fIthread\fP\fB, int\fP \fIpolicy\fP\fB, +.br +\ \ \ \ \ \ const struct sched_param *\fP\fIparam\fP\fB); \fP +\fB +.br +\fP +.SH DESCRIPTION +.LP +The \fIpthread_getschedparam\fP() and \fIpthread_setschedparam\fP() +functions shall, respectively, get and set the scheduling +policy and parameters of individual threads within a multi-threaded +process to be retrieved and set. For SCHED_FIFO and SCHED_RR, +the only required member of the \fBsched_param\fP structure is the +priority \fIsched_priority\fP. For SCHED_OTHER, the affected +scheduling parameters are implementation-defined. +.LP +The \fIpthread_getschedparam\fP() function shall retrieve the scheduling +policy and scheduling parameters for the thread whose +thread ID is given by \fIthread\fP and shall store those values in +\fIpolicy\fP and \fIparam\fP, respectively. The priority +value returned from \fIpthread_getschedparam\fP() shall be the value +specified by the most recent \fIpthread_setschedparam\fP(), +\fIpthread_setschedprio\fP(), or \fIpthread_create\fP() call affecting +the target thread. It shall not reflect any temporary +adjustments to its priority as a result of any priority inheritance +or ceiling functions. The \fIpthread_setschedparam\fP() +function shall set the scheduling policy and associated scheduling +parameters for the thread whose thread ID is given by +\fIthread\fP to the policy and associated parameters provided in \fIpolicy\fP +and \fIparam\fP, respectively. +.LP +The \fIpolicy\fP parameter may have the value SCHED_OTHER, SCHED_FIFO, +or SCHED_RR. The scheduling parameters for the +SCHED_OTHER policy are implementation-defined. The SCHED_FIFO and +SCHED_RR policies shall have a single scheduling parameter, +\fIpriority\fP. +.LP +If _POSIX_THREAD_SPORADIC_SERVER is defined, then the \fIpolicy\fP +argument may have the value SCHED_SPORADIC, with the exception +for the \fIpthread_setschedparam\fP() function that if the scheduling +policy was not SCHED_SPORADIC at the time of the call, it is +implementation-defined whether the function is supported; in other +words, the implementation need not allow the application to +dynamically change the scheduling policy to SCHED_SPORADIC. The sporadic +server scheduling policy has the associated parameters +\fIsched_ss_low_priority\fP, \fIsched_ss_repl_period\fP, \fIsched_ss_init_budget\fP, +\fIsched_priority\fP, and +\fIsched_ss_max_repl\fP. The specified \fIsched_ss_repl_period\fP +shall be greater than or equal to the specified +\fIsched_ss_init_budget\fP for the function to succeed; if it is not, +then the function shall fail. The value of +\fIsched_ss_max_repl\fP shall be within the inclusive range [1, {SS_REPL_MAX}] +for the function to succeed; if not, the function +shall fail. +.LP +If the \fIpthread_setschedparam\fP() function fails, the scheduling +parameters shall not be changed for the target thread. +.SH RETURN VALUE +.LP +If successful, the \fIpthread_getschedparam\fP() and \fIpthread_setschedparam\fP() +functions shall return zero; otherwise, an +error number shall be returned to indicate the error. +.SH ERRORS +.LP +The \fIpthread_getschedparam\fP() function may fail if: +.TP 7 +.B ESRCH +The value specified by \fIthread\fP does not refer to an existing +thread. +.sp +.LP +The \fIpthread_setschedparam\fP() function may fail if: +.TP 7 +.B EINVAL +The value specified by \fIpolicy\fP or one of the scheduling parameters +associated with the scheduling policy \fIpolicy\fP is +invalid. +.TP 7 +.B ENOTSUP +An attempt was made to set the policy or scheduling parameters to +an unsupported value. +.TP 7 +.B ENOTSUP +An attempt was made to dynamically change the scheduling policy to +SCHED_SPORADIC, and the implementation does not support this +change. +.TP 7 +.B EPERM +The caller does not have the appropriate permission to set either +the scheduling parameters or the scheduling policy of the +specified thread. +.TP 7 +.B EPERM +The implementation does not allow the application to modify one of +the parameters to the value specified. +.TP 7 +.B ESRCH +The value specified by \fIthread\fP does not refer to a existing thread. +.sp +.LP +These functions shall not return an error code of [EINTR]. +.LP +\fIThe following sections are informative.\fP +.SH EXAMPLES +.LP +None. +.SH APPLICATION USAGE +.LP +None. +.SH RATIONALE +.LP +None. +.SH FUTURE DIRECTIONS +.LP +None. +.SH SEE ALSO +.LP +\fIpthread_setschedprio\fP() , \fIsched_getparam\fP() , \fIsched_getscheduler\fP() +, the Base +Definitions volume of IEEE\ Std\ 1003.1-2001, \fI<pthread.h>\fP, \fI<sched.h>\fP +.SH COPYRIGHT +Portions of this text are reprinted and reproduced in electronic form +from IEEE Std 1003.1, 2003 Edition, Standard for Information Technology +-- Portable Operating System Interface (POSIX), The Open Group Base +Specifications Issue 6, Copyright (C) 2001-2003 by the Institute of +Electrical and Electronics Engineers, Inc and The Open Group. In the +event of any discrepancy between this version and the original IEEE and +The Open Group Standard, the original IEEE and The Open Group Standard +is the referee document. The original Standard can be obtained online at +http://www.opengroup.org/unix/online.html . |