NICE

Section: Linux Programmer's Manual (2)
Updated: 2014-04-28
Index JM Home Page roff page
 

名前

nice - プロセスの優先度を変更する  

書式

#include <unistd.h>

int nice(int inc);

glibc 向けの機能検査マクロの要件 (feature_test_macros(7) 参照):

nice(): _BSD_SOURCE || _SVID_SOURCE || _XOPEN_SOURCE  

説明

nice() は inc の値を nice を呼んだプロセスの nice 値に加える (nice 値が大きい数値ほど低い優先度を表す)。 負の数を指定する、つまり、以前よりも優先度を上げるという指定ができるのは スーパーユーザーだけである。 nice 値の範囲については getpriority(2) で説明されている。  

返り値

成功した場合、新しい nice 値が返る (但し、下記の「注意」を参照)。 失敗した場合 -1 が返り、 errno がエラーの内容に従って設定される。  

エラー

EPERM
スーパーユーザー以外が inc に負の数値を指定して優先度を上げようとした。 呼び出し元のプロセスが inc に負の数値を指定して優先度を上げようとしたが、 十分な権限を持っていなかった。 Linux では CAP_SYS_NICE ケーパビリティが必要である。 (setrlimit(2) のリソース上限 RLIMIT_NICE に関する議論も参照のこと)。
 

準拠

SVr4, 4.3BSD, POSIX.1-2001. しかし、Linux と (2.2.4より古い) (g)libc では返り値は標準と異なる。 詳細は以下を参照のこと。 SVr4 には他に EINVAL エラーコードについての記述がある。  

注意

SUSv2 と POSIX 1003.1-2003 では、 nice() は新しい nice 値を返すと規定されている。 一方、Linux システムコールと (2.2.4 より古い) (g)libc ライブラリ関数は 成功時に 0 を返す。新しい nice 値は getpriority(2) を使って取得できる。

glibc 2.2.4 以降では、 nice() は getpriority(2) を呼び出すライブラリ関数として実装されており、 呼び出し元に返す新しい nice 値を getpriority(2) を呼び出して取得するようになっている。 この実装では、正常な動作でも -1 が返される可能性がある。 確実にエラーを検出するためには、 呼び出しの前に errno に 0 を設定し、 nice() が -1 を返したときに errno をチェックすると良い。  

関連項目

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

この文書について

この man ページは Linux man-pages プロジェクトのリリース 3.79 の一部 である。プロジェクトの説明とバグ報告に関する情報は http://www.kernel.org/doc/man-pages/ に書かれている。


 

Index

名前
書式
説明
返り値
エラー
準拠
注意
関連項目
この文書について

This document was created by man2html, using the manual pages.
Time: 15:33:25 GMT, March 14, 2017