NICE(2)

NOM
nice - Modifier la politesse du processus

SYNOPSIS
#include <unistd.h>

int nice(int inc);

Exigences de macros de test de fonctionnalités pour la glibc (consultez feature_test_macros(7)) :

nice() : _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE

DESCRIPTION
nice() ajoute inc à la valeur de politesse du processus appelant. (Une grande valeur de politesse signifie une faible priorité.) Seul le superutilisateur peut indiquer une valeur inc négative (ce qui rend le processus plus prioritaire). L'intervalle des valeurs de politesse est décrit dans getpriority(2).

VALEUR RENVOYÉE
nice renvoie la nouvelle valeur de politesse s'il réussit (voir NOTES ci-dessous, ou -1 s'il échoue, auquel cas errno contient le code d'erreur.

ERREURS

EPERM
    Le processus appelant a tenté d'augmenter sa priorité en fournissant une valeur inc négative mais il n'a pas les privilèges suffisants. Sous Linux, la capacité CAP_SYS_NICE est nécessaire. (Mais voir l'explication de la limite de ressources RLIMIT_NICE dans setrlimit(2).)

CONFORMITÉ
SVr4, BSD 4.3, POSIX.1-2001. Toutefois, la valeur de retour sous Linux avec la glibc (jusqu'à glibc 2.2.4) n'est pas standard, voir ci-dessous. SVr4 documente un code d'erreur supplémentaire EINVAL.

NOTES
SUSv2 et POSIX.1-2001 indiquent que cet appel système renvoie la nouvelle valeur de courtoisie, tandis que l'appel système Linux et la routine de la glibc (jusqu'à glibc 2.2.4) renvoient 0 en cas de réussite. La nouvelle valeur de courtoisie peut être obtenue grâce à getpriority(2). Depuis la glibc 2.2.4, nice() est implémenté comme une fonction de bibliothèque qui appelle getpriority(2) pour obtenir la nouvelle valeur de politesse, qu'elle renvoie à l'appelant. Avec cette implémentation, un code de retour -1 est tout à fait possible. Pour détecter les erreurs, il faut mettre errno à zéro avant l'appel, et examiner sa valeur si nice() renvoie -1.

VOIR AUSSI
nice(1), renice(1), fork(2), getpriority(2), setpriority(2), capabilities(7), sched(7)

COLOPHON
Cette page fait partie de la publication 3.70 du projet man-pages Linux. Une description du projet et des instructions pour signaler des anomalies peuvent être trouvées à l'adresse http://www.kernel.org/doc/man-pages/.

TRADUCTION
Depuis 2010, cette traduction est maintenue à l'aide de l'outil po4a <http://po4a.alioth.debian.org/> par l'équipe de traduction francophone au sein du projet perkamon <http://perkamon.alioth.debian.org/>.

Christophe Blaess <http://www.blaess.fr/christophe/> (1996-2003), Alain Portal <http://manpagesfr.free.fr/> (2003-2006). Julien Cristau et l'équipe francophone de traduction de Debian (2006-2009).

Veuillez signaler toute erreur de traduction en écrivant à <perkamon-fr@traduc.org>.

Vous pouvez toujours avoir accès à la version anglaise de ce document en utilisant la commande « LC_ALL=C man <section> <page_de_man> ».