以下の関数はリソース使用情報を取得するために使われます:
who) |
返される値の各フィールドはそれぞれ、個々のシステムリソースがどれくらい 使用されているか、例えばユーザモードでの実行に費やされた時間やプロセス が主記憶からスワップアウトされた回数、を示しています。幾つかの値、 例えばプロセスが使用しているメモリ量は、内部時計の最小単位に依存します。
以前のバージョンとの互換性のため、返される値は 16 要素からなるタプル としてアクセスすることもできます。
戻り値のフィールド ru_utime および ru_stime は 浮動小数点数で、それぞれユーザモードでの実行に費やされた時間、および システムモードでの実行に費やされた時間を表します。それ以外の値は 整数です。これらの値に関する詳しい情報は getrusage(2) を調べてください。以下に簡単な概要を示します:
インデクス | フィールド名 | リソース |
---|---|---|
0 |
ru_utime | ユーザモード実行時間 (float) |
1 |
ru_stime | システムモード実行時間 (float) |
2 |
ru_maxrss | 最大常駐ページサイズ |
3 |
ru_ixrss | 共有メモリサイズ |
4 |
ru_idrss | 非共有メモリサイズ |
5 |
ru_isrss | 非共有スタックサイズ |
6 |
ru_minflt | I/O を必要とするページフォールト数 |
7 |
ru_majflt | I/O を必要としないページフォールト数 |
8 |
ru_nswap | スワップアウト回数 |
9 |
ru_inblock | ブロック入力操作数 |
10 |
ru_oublock | ブロック出力操作数 |
11 |
ru_msgsnd | 送信メッセージ数 |
12 |
ru_msgrcv | 受信メッセージ数 |
13 |
ru_nsignals | 受信シグナル数 |
14 |
ru_nvcsw | 自発的な実行コンテキスト切り替え数 |
15 |
ru_nivcsw | 非自発的な実行コンテキスト切り替え数 |
この関数は無効な who 引数を指定した場合には ValueError を送出します。また、異常が発生 した場合には error 例外が送出される可能性があります。
バージョン 2.3 で 変更 された仕様: 各値を返されたオブジェクトの属性としてアクセス できるようにしました
) |
以下の RUSAGE_* シンボルはどのプロセスの情報を提供させるか を指定するために関数 getrusage() に渡されます。