SLEEP(3) FreeBSD ライブラリ関数マニュアル SLEEP(3)
名称
sleep − 秒単位で測定される間隔だけプロセスの実行を中断する |
ライブラリ
標準 C ライブラリ (libc, −lc) |
書式
#include <unistd.h> unsigned int |
sleep(unsigned int seconds); |
解説 |
sleep() 関数は seconds 秒が経過するか、またはシグナルがプロセスに到着した 結果シグナル処理関数を起動するかプロセスを終了するまで、呼び出しプロセス の実行を中断します。システムの稼働状況によっては、プロセスの中断している 時間が不確定となって長びく可能性があります。 この関数は、 nanosleep(2) を使用して、 seconds 秒経つか、またはシグナルが 到着するまで中断するという方法で実装されています。したがって、この実装に おいては、プロセスが中断することによってプロセスタイマの状態が影響を受け ることはなく、SIGALRM に対する特別な処理もありません。 |
戻り値
要求された時間が経過したために sleep() 関数が復帰した場合、返される値は 0 です。シグナルが送られたために sleep() 関数が復帰した場合、返される値はプ ロセスが中断していなかった時間量 (秒単位) になります (これは要求された時 間から実際に中断していた時間を減算したものです)。 |
関連項目
規格
sleep() 関数は ISO/IEC 9945-1:1990 (‘‘POSIX.1’’) に適合しています。 |
歴史
sleep() 関数は Version 7 AT&T UNIX で登場しました。 FreeBSD 10.0 February 13, 1998 FreeBSD 10.0 |