nice()

Изменить приоритет процесса

Прототип:

#include <unistd.h>
int nice( int incr );

Аргументы:

incr
The amount that you want to add to the process's priority.

Библиотека:

libc

Описание:

The nice() function allows a process to change its priority. The invoking process must be in a scheduling class that supports the operation.


Note: This function has no effect in any of the scheduling policies that ЗОСРВ «Нейтрино» supports. Use sched_setparam(), pthread_setschedparam(), or pthread_setschedprio() instead of this function.

The nice() function adds the value of incr to the nice value of the calling process. A process's nice value is a nonnegative number; a greater positive value results in a lower CPU priority.

A maximum nice value of 2 * NZERO - 1 and a minimum nice value of 0 are imposed by the system. NZERO is defined in <limits.h> with a default value of 20. If you request a value above or below these limits, the nice value is set to the corresponding limit. A nice value of 40 is treated as 39. Only a process with superuser privileges can lower the nice value.

Возвращаемое значение:

Новое nice-значение минус NZERO. Если возникла ошибка функция возвращает -1, приоритет потока не меняется, код ошибки записывается в errno.

Коды ошибок:

EINVAL
The nice() function was called by a process in a scheduling class other than time-sharing.
EPERM
The incr argument was negative or greater than 40, and the effective user ID of the calling process isn't the superuser.

Классификация:

POSIX 1003.1 XSI

Точка остановки потока
Нет
Обработчик прерываний
Нет
Обработчик сигналов
Да
В потоке
Да

Предостережения:

As -1 is a permissible return value in a successful situation, an application wishing to check for error situations should set errno to 0, then call nice(), and if it returns -1, check to see if errno is nonzero.

Тематические ссылки:

execl(), execle(), execlp(), execlpe(), execv(), execve(), execvp(), execvpe(), pthread_setschedparam(), pthread_setschedprio(), sched_setparam()

nice в Справочнике по Утилитам




Предыдущий раздел: Описание API системной библиотеки