Rechercher une page de manuel
usleep
Langue: ja
Version: 2007-02-01 (mandriva - 01/05/08)
Section: 3 (Bibliothèques de fonctions)
名前
usleep - マイクロ秒単位で実行を延期する書式
#define _XOPEN_SOURCE 500 /* または #define _BSD_SOURCE */
#include <unistd.h> int usleep(useconds_t usec);
説明
usleep() 関数は (少なくとも) usecマイクロ秒の間、 呼び出し元プロセスの実行を延期する。 システムの動作状況や呼び出しによる時間の消費やシステムタイマの粒度によって、 停止時間は設定した値よりも少し延ばされるかもしれない。返り値
成功すると 0、エラーの場合 -1 を返す。エラー
- EINTR
- シグナルによって中断された。
- EINVAL
- usec が 1000000 以上だった。 (これをエラーとみなすシステムのみ)
準拠
4.3BSD, POSIX.1-2001. POSIX.1-2001 では、この関数は過去のものと宣言されている。 代わりに nanosleep(2) を使うこと。もともとの BSD の実装や、バージョン 2.2.2 より前の glibc では、 この関数の返り値の型は void である。 POSIX 版は int を返し、このプロトタイプは glibc 2.2.2 以降で使用されている。
エラーとして EINVAL を返すというのは SUSv2 でのみ文書化されている。
注意
useconds_t 型は [0,1000000] の範囲の整数を扱うことができる 符号なし整数型である。 明示的にこの型を使わないことでプログラムの移植性がより高まる。 以下のように使うこと。-
#include <unistd.h> ... unsigned int usecs; . usleep(usecs);
この関数と、SIGALRM シグナルあるいは alarm(2), sleep(3), nanosleep(2), setitimer(2), timer_create(3), timer_delete(3), timer_getoverrun(3), timer_gettime(3), timer_settime(3), ualarm(3) といったその他のタイマー関数を同時に使った場合の動作は未定義である。
関連項目
alarm(2), getitimer(2), nanosleep(2), select(2), setitimer(2), ualarm(3), sleep(3), feature_test_macros(7), time(7)
"Des Elfes et des Dragons!" que je lui dis. "Mieux vaut pour toi et
moi des choux et des pommes de terre. Ne va pas te mêler des affaires
de ceux qui sont au-dessus de toi, ou tu vas aboutir à des ennuis trop
gros pour toi"
-- J.R.R. Tolkien, "La Communauté de l'Anneau"
moi des choux et des pommes de terre. Ne va pas te mêler des affaires
de ceux qui sont au-dessus de toi, ou tu vas aboutir à des ennuis trop
gros pour toi"
-- J.R.R. Tolkien, "La Communauté de l'Anneau"
Contenus ©2006-2010 Benjamin Poulain
Design ©2006-2010 Maxime Vantorre