Linux man pages : nice (2)
NICE(2) Linux Programmer's Manual NICE(2)
nice - change process priority
int nice(int inc);
nice adds inc to the nice value for the calling pid. (A large nice
value means a low priority.) Only the superuser may specify a negative
increment, or priority increase.
On success, zero is returned. On error, -1 is returned, and errno is
EPERM A non-super user attempts to do a priority increase by supplying
a negative inc.
SVr4, SVID EXT, AT&T, X/OPEN, BSD 4.3. However, the Linux and glibc
(earlier than glibc 2.2.4) return value is nonstandard, see below.
SVr4 documents an additional EINVAL error code.
Note that the routine is documented in SUSv2 to return the new nice
value, while the Linux syscall and (g)libc (earlier than glibc 2.2.4)
routines return 0 on success. The new nice value can be found using
getpriority(2). Note that an implementation in which nice returns the
new nice value can legitimately return -1. To reliably detect an
error, set errno to 0 before the call, and check its value when nice
nice(1), getpriority(2), setpriority(2), fork(2), renice(8)
Linux 2001-06-04 NICE(2)