summaryrefslogtreecommitdiffstats
path: root/man2/nice.2
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--man2/nice.2118
1 files changed, 118 insertions, 0 deletions
diff --git a/man2/nice.2 b/man2/nice.2
new file mode 100644
index 0000000..d26a1be
--- /dev/null
+++ b/man2/nice.2
@@ -0,0 +1,118 @@
+.\" Copyright (c) 1992 Drew Eckhardt <drew@cs.colorado.edu>, March 28, 1992
+.\"
+.\" SPDX-License-Identifier: Linux-man-pages-copyleft
+.\"
+.\" Modified by Michael Haardt <michael@moria.de>
+.\" Modified 1993-07-24 by Rik Faith <faith@cs.unc.edu>
+.\" Modified 1996-11-04 by Eric S. Raymond <esr@thyrsus.com>
+.\" Modified 2001-06-04 by aeb
+.\" Modified 2004-05-27 by Michael Kerrisk <mtk.manpages@gmail.com>
+.\"
+.TH nice 2 2023-03-30 "Linux man-pages 6.05.01"
+.SH NAME
+nice \- change process priority
+.SH LIBRARY
+Standard C library
+.RI ( libc ", " \-lc )
+.SH SYNOPSIS
+.nf
+.B #include <unistd.h>
+.PP
+.BI "int nice(int " inc );
+.fi
+.PP
+.RS -4
+Feature Test Macro Requirements for glibc (see
+.BR feature_test_macros (7)):
+.RE
+.PP
+.BR nice ():
+.nf
+ _XOPEN_SOURCE
+ || /* Since glibc 2.19: */ _DEFAULT_SOURCE
+ || /* glibc <= 2.19: */ _BSD_SOURCE || _SVID_SOURCE
+.fi
+.SH DESCRIPTION
+.BR nice ()
+adds
+.I inc
+to the nice value for the calling thread.
+(A higher nice value means a lower priority.)
+.PP
+The range of the nice value is +19 (low priority) to \-20 (high priority).
+Attempts to set a nice value outside the range are clamped to the range.
+.PP
+Traditionally, only a privileged process could lower the nice value
+(i.e., set a higher priority).
+However, since Linux 2.6.12, an unprivileged process can decrease
+the nice value of a target process that has a suitable
+.B RLIMIT_NICE
+soft limit; see
+.BR getrlimit (2)
+for details.
+.SH RETURN VALUE
+On success, the new nice value is returned (but see NOTES below).
+On error, \-1 is returned, and
+.I errno
+is set to indicate the error.
+.PP
+A successful call can legitimately return \-1.
+To detect an error, set
+.I errno
+to 0 before the call, and check whether it is nonzero after
+.BR nice ()
+returns \-1.
+.SH ERRORS
+.TP
+.B EPERM
+The calling process attempted to increase its priority by
+supplying a negative
+.I inc
+but has insufficient privileges.
+Under Linux, the
+.B CAP_SYS_NICE
+capability is required.
+(But see the discussion of the
+.B RLIMIT_NICE
+resource limit in
+.BR setrlimit (2).)
+.SH VERSIONS
+.SS C library/kernel differences
+POSIX.1 specifies that
+.BR nice ()
+should return the new nice value.
+However, the raw Linux system call returns 0 on success.
+Likewise, the
+.BR nice ()
+wrapper function provided in glibc 2.2.3 and earlier returns 0 on success.
+.PP
+Since glibc 2.2.4, the
+.BR nice ()
+wrapper function provided by glibc provides conformance to POSIX.1 by calling
+.BR getpriority (2)
+to obtain the new nice value, which is then returned to the caller.
+.SH STANDARDS
+POSIX.1-2008.
+.SH HISTORY
+POSIX.1-2001, SVr4, 4.3BSD.
+.\" SVr4 documents an additional
+.\" .B EINVAL
+.\" error code.
+.SH NOTES
+For further details on the nice value, see
+.BR sched (7).
+.PP
+.IR Note :
+the addition of the "autogroup" feature in Linux 2.6.38 means that
+the nice value no longer has its traditional effect in many circumstances.
+For details, see
+.BR sched (7).
+.SH SEE ALSO
+.BR nice (1),
+.BR renice (1),
+.BR fork (2),
+.BR getpriority (2),
+.BR getrlimit (2),
+.BR setpriority (2),
+.BR capabilities (7),
+.BR sched (7)