Section: Linux Programmer's Manual (2)
Return to Main Contents
nice - change process priority
int nice(int inc);
Feature Test Macro Requirements for glibc (see
_BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE
to the nice value for the calling process.
(A higher nice value means a low priority.)
Only the superuser may specify a negative increment,
or priority increase.
The range for nice values is described in
On success, the new nice value is returned (but see NOTES below).
On error, -1 is returned, and
is set appropriately.
The calling process attempted to increase its priority by
supplying a negative
but has insufficient privileges.
Under Linux, the
capability is required.
(But see the discussion of the
resource limit in
SVr4, 4.3BSD, POSIX.1-2001.
However, the Linux and (g)libc
(earlier than glibc 2.2.4) return value is nonstandard, see below.
SVr4 documents an additional
SUSv2 and POSIX.1-2001 specify that
should return the new nice value.
However, the Linux syscall and the
library function provided in older versions of (g)libc
(earlier than glibc 2.2.4) return 0 on success.
The new nice value can be found using
Since glibc 2.2.4,
is implemented as a library function that calls
to obtain the new nice value to be returned to the caller.
With this implementation,
a successful call can legitimately return -1.
To reliably detect an error, set
to 0 before the call, and check its value when
This page is part of release 3.74 of the Linux
A description of the project,
information about reporting bugs,
and the latest version of this page,
can be found at
- RETURN VALUE
- CONFORMING TO
- SEE ALSO