8.4.4 让进程休眠
8.4.4 让进程休眠
sleep 函数将一个进程挂起一段指定的时间。
#include <unistd.h>
unsigned int sleep(unsigned int secs);返回: 还要休眠的秒数。
如果请求的时间量已经到了,sleep 返回 0,否则返回还剩下的要休眠的秒数。后一种情况是可能的,如果因为 sleep 函数被一个信号中断而过早地返回。我们将在 8.5 节中详细讨论信号。
我们会发现另一个很有用的函数是 pause 函数,该函数让调用函数休眠,直到该进程收到一个信号。
#include <unistd.h>
int pause(void);总是返回 -1。
练习题 8.5 编写一个
sleep的包装函数,叫做snooze,带有下面的接口:unsigned int snooze(unsigned int secs);
snooze函数和sleep函数的行为完全一样,除了它会打印出一条消息来描述进程实际休眠了多长时间:Slept for 4 of 5 secs.