получить и установить атрибут schedparam (get and set the schedparam attribute)
Пролог (Prolog)
This manual page is part of the POSIX Programmer's Manual. The
Linux implementation of this interface may differ (consult the
corresponding Linux manual page for details of Linux behavior),
or the interface may not be implemented on Linux.
Имя (Name)
pthread_attr_getschedparam, pthread_attr_setschedparam — get and
set the schedparam attribute
Синопсис (Synopsis)
#include <pthread.h>
int pthread_attr_getschedparam(const pthread_attr_t *restrict attr,
struct sched_param *restrict param);
int pthread_attr_setschedparam(pthread_attr_t *restrict attr,
const struct sched_param *restrict param);
Описание (Description)
The pthread_attr_getschedparam() and pthread_attr_setschedparam()
functions, respectively, shall get and set the scheduling
parameter attributes in the attr argument. The contents of the
param structure are defined in the <sched.h> header. For the
SCHED_FIFO and SCHED_RR policies, the only required member of
param is sched_priority.
For the SCHED_SPORADIC policy, the required members of the param
structure are sched_priority, sched_ss_low_priority,
sched_ss_repl_period, sched_ss_init_budget, and
sched_ss_max_repl. The specified sched_ss_repl_period must be
greater than or equal to the specified sched_ss_init_budget for
the function to succeed; if it is not, then the function shall
fail. The value of sched_ss_max_repl shall be within the
inclusive range [1,{SS_REPL_MAX}] for the function to succeed; if
not, the function shall fail. It is unspecified whether the
sched_ss_repl_period and sched_ss_init_budget values are stored
as provided by this function or are rounded to align with the
resolution of the clock being used.
The behavior is undefined if the value specified by the attr
argument to pthread_attr_getschedparam() or
pthread_attr_setschedparam() does not refer to an initialized
thread attributes object.
Возвращаемое значение (Return value)
If successful, the pthread_attr_getschedparam() and
pthread_attr_setschedparam() functions shall return zero;
otherwise, an error number shall be returned to indicate the
error.
Ошибки (Error)
The pthread_attr_setschedparam() function shall fail if:
ENOTSUP
An attempt was made to set the attribute to an unsupported
value.
The pthread_attr_setschedparam() function may fail if:
EINVAL
The value of param is not valid.
These functions shall not return an error code of [EINTR]
.
The following sections are informative.
Примеры (Examples)
None.
Использование в приложениях (Application usage)
After these attributes have been set, a thread can be created
with the specified attributes using pthread_create(). Using
these routines does not affect the current running thread.
Обоснование (Rationale)
If an implementation detects that the value specified by the attr
argument to pthread_attr_getschedparam() or
pthread_attr_setschedparam() does not refer to an initialized
thread attributes object, it is recommended that the function
should fail and report an [EINVAL]
error.
Будущие направления (Future directions)
None.
Смотри также (See also)
pthread_attr_destroy(3p), pthread_attr_getscope(3p),
pthread_attr_getinheritsched(3p),
pthread_attr_getschedpolicy(3p), pthread_create(3p)
The Base Definitions volume of POSIX.1‐2017, pthread.h(0p),
sched.h(0p)