您的位置:首页 > 其它

signal

2016-03-21 13:44 323 查看
#include <signal.h>
/********************************
*功能:给一个信号指定一个行为
*参数:signum:信号编号
*      handler:函数的入口地址
*返回值:返回信号行为之前的值,否则返回SIG_ERR
* ****************************/
typedef void (*sighandler_t)(int);
sighandler_t signal(int signum, sighandler_t handler);
//替换如下
void (*signal(int signum , void(*handler)(int)))(int);


信号会打断阻塞的系统调用;

/************************
*功能:每秒向标准输出输出*
*      信号到来输出!
*信号的不可靠:信号行为不可靠
* *********************/
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>

void int_handler(int signum)
{
write(1 , "!" , 1);

}
int main()
{
int i ;
//1.信号
signal(SIGINT , int_handler);
for(i = 0 ; i < 10 ;i++)
{
write(1 , "*" , 1 );
sleep(1);
}
exit(0);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: