優れた組み込みシステム設計のためのミドルウエア、開発ツール、
リアルタイム オペレーティング システム ソフトウエアとサービス

pthread_setschedparam

pthread_setschedparam()

Set thread scheduling parameters

Synopsis:

#include <pthread.h>

int pthread_setschedparam(
               pthread_t thread,
               int policy,
               const struct sched_param *param );

Arguments:

thread
The ID of the thread that you want to get the scheduling parameters for. You can get a thread ID by calling pthread_create() or pthread_self().
policy
The new scheduling policy; one of:
  • SCHED_FIFO — a fixed-priority scheduler in which the highest priority, ready thread runs until it blocks or is preempted by a higher priority thread.
  • SCHED_RR — the same as SCHED_FIFO, except threads at the same priority level timeslice (round robin) every 4 × the clock period (see ClockPeriod()).
  • SCHED_OTHER — currently the same as SCHED_RR.
  • SCHED_SPORADIC — sporadic scheduling.

For more information, see Thread scheduling in the QNX Neutrino Microkernel chapter of the System Architecture guide.

param
A pointer to a sched_param structure that specifies the scheduling parameters that you want to use.

Library:

libc

Use the -l c option to qcc to link against this library. This library is usually included automatically.

Description:

The pthread_setschedparam() function sets the scheduling policy and associated scheduling parameters of thread thread to the values specified in policy and param.

Returns:

EOK
Success.
EINVAL
Invalid scheduling policy policy or parameters param.
ENOTSUP
Unsupported scheduling policy policy or parameters param.
EPERM
Insufficient privilege to modify scheduling policy policy or parameters param.
ESRCH
Invalid thread ID thread.

Classification:

POSIX 1003.1 THR TPS

Safety:
Cancellation point No
Interrupt handler No
Signal handler Yes
Thread Yes

See also:

pthread_getschedparam(), sched_param

Thread scheduling in the QNX Neutrino Microkernel chapter of the System Architecture guide

Scheduling algorithms in the Programming Overview chapter of the QNX Neutrino Programmer's Guide