Chinaunix首页 | 论坛 | 博客
  • 博客访问: 246264
  • 博文数量: 35
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 273
  • 用 户 组: 普通用户
  • 注册时间: 2014-11-27 23:34
个人简介

To follow the path,look to the master,follow the master.

文章分类

全部博文(35)

文章存档

2019年(1)

2018年(1)

2017年(1)

2016年(8)

2015年(24)

分类: LINUX

2016-01-08 09:46:20

示例
输入超时

点击(此处)折叠或打开

  1. #include "../apue.h"
  2. void sig_fun(int signum)
  3. {
  4.     printf("input time out.\n");

  5.     exit(0);
  6. }
  7. int main()
  8. {
  9.     int n=0;
  10.     int i;
  11.     char buf[1024];

  12.     memset(buf, 0, sizeof(buf));
  13.     signal(SIGALRM, sig_fun);
  14.     alarm(5);

  15.     n=read(0, buf, sizeof(buf));
  16.     //删除闹钟
  17.     alarm(0);
  18.     for(i=0; buf[i]!='\n'; i++)
  19.     {
  20.         write(2, &buf[i], 1);
  21.         sleep(1);
  22.     }

  23.     return 0;
  24. }
5秒之内,输入未完成。提示输入超时。
[root@bogon 04_signal]# ./exe
input time out.
5秒内,输入完成会打印输入内容。
[root@bogon 04_signal]# ./exe
12312323
12312323[root@bogon 04_signal]

阅读(1750) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~