首页 > 编程 > C > 正文

C语言中的pause()函数和alarm()函数以及sleep()函数

2020-01-26 14:54:39
字体:
来源:转载
供稿:网友

C语言pause()函数:让进程暂停直到信号出现
头文件:

#include <unistd.h>

定义函数:

int pause(void);

函数说明:pause()会令目前的进程暂停(进入睡眠状态), 直到被信号(signal)所中断.

返回值:只返回-1.

错误代码:EINTR 有信号到达中断了此函数.


C语言alarm()函数:设置信号传送闹钟
头文件:

#include <unistd.h>

定义函数:

unsigned int alarm(unsigned int seconds);

函数说明:alarm()用来设置信号SIGALRM 在经过参数seconds 指定的秒数后传送给目前的进程. 如果参数seconds 为0, 则之前设置的闹钟会被取消, 并将剩下的时间返回.

返回值:返回之前闹钟的剩余秒数, 如果之前未设闹钟则返回0.

范例

#include <unistd.h>#include <signal.h>void handler(){  printf("hello/n");}main(){  int i;  signal(SIGALRM, handler);  alarm(5);  for(i = 1; i < 7; i++)  {    printf("sleep %d .../n", i);    sleep(1);  }}

执行:

sleep 1 ...sleep 2 ...sleep 3 ...sleep 4 ...sleep 5 ...hellosleep 6 ...

C语言sleep()函数:让进程暂停执行一段时间
头文件:

 #include <unistd.h>

定义函数:

unsigned int sleep(unsigned int seconds);

函数说明:sleep()会令目前的进程暂停, 直到达到参数seconds 所指定的时间, 或是被信号所中断.

返回值:若进程暂停到参数seconds 所指定的时间则返回0, 若有信号中断则返回剩余秒数.

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

图片精选