NICE

Section: Linux Programmer's Manual (2)
Updated: 2014-04-28
Index JM Home 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/ に書かれている。

関連キーワード

nice   優先度   数値   スーパー   成功   libc   ライブラリ   実装   unistd   検査   マクロ   要件   macros   範囲   下記   権限   ケーパビリティ   リソース   上限   議論   返り値   詳細   エラーコード   記述   SUSv

Linux マニュアル 一覧

関連するコマンド・関数

getpriority.2   setpriority.2   nice.1   sched_rr_get_interval.2   sched.7   ioprio_get.2
 

Index

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

This document was created by man2html, using the manual pages.
Time: 04:39:01 GMT, October 11, 2026