NICE(2)

NOM
nice - Augmenter la courtoisie du processus

SYNOPSIS
#include <unistd.h>

int nice(int inc);

Exigences de macros de test de fonctionalités pour la glibc (voir feature_test_macros(7)) :

getcwd() : _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE

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

VALEUR RENVOYÉE
S'il réussit, nice() renvoie la nouvelle valeur de courtoisie (mais voir la section NOTES plus bas). S'il échoue, il renvoie -1 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 suffisant. Sous Linux, la capacité CAP_SYS_NICE est nécessaire. (Mais voir la discussion sur 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 les (g)libc (jusqu'à glibc 2.2.4) n'est pas standard, voir ci-dessous. SVr4 documente un code d'erreur EINVAL supplémentaire.

NOTES
SUSv2 et POSIX.1-2001 spécifient que nice() devrait renvoyer la nouvelle valeur de courtoisie. Toutefois, l'appel système Linux et la fonction nice() fournie dans d'anciennes versions des (g)libc (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ée comme une fonction de la bibliothèque appelant getpriority(2) pour obtenir la nouvelle valeur de courtoisie qui est retournée à l'appelant. Avec cette implémentation, un appel réussit peut renvoyer -1. 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), fork(2), getpriority(2), setpriority(2), capabilities(7), renice(8)

TRADUCTION

Ce document est une traduction réalisée par Christophe Blaess <http://www.blaess.fr/christophe/> le 10 octobre 1996 et révisée le 22 décembre 2007.

L'équipe de traduction a fait le maximum pour réaliser une adaptation française de qualité. La version anglaise la plus à jour de ce document est toujours consultable via la commande : « LANG=C man 2 nice ». N'hésitez pas à signaler à l'auteur ou au traducteur, selon le cas, toute erreur dans cette page de manuel.