nice(2) -- Linux man page
NAMEnice - change process priority
DESCRIPTIONnice 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.
RETURN VALUEOn success, zero is returned. On error, -1 is returned, and errno is set appropriately.
- A non-super user attempts to do a priority increase by supplying a negative inc.
CONFORMING TOSVr4, 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.
NOTESNote that the routine is documented in SUSv2 and POSIX 1003.1-2003 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 returns -1.
SEE ALSOnice(1), getpriority(2), setpriority(2), fork(2), renice(8)