Middleware, development tools, realtime operating system
software and services for superior embedded design


Home
QNX Community Resources
Developer Support
QNX Documentation Library
QNX Developer Support

QNX Developer Support

QNX Software Systems
Developer Resources
Blogs
Board support packages
Foundry27 projects
Forums
Hardware support listing
Online video tutorials
Product documentation
Technical Articles

[Previous] [Contents] [Index] [Next]

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


[Previous] [Contents] [Index] [Next]