相信自己,只有不想做的,没有做不到的。
分类: LINUX
2013-12-12 12:59:36
//异步信号
//1,定义
struct fasync_struct *hello_fasync_struct;
//2初始化
.fasync = hello_fasync,
//初始化信号处理
static int hello_fasync (int fd, struct file *file, int on)
{
return fasync_helper(fd, file, on, &hello_fasync_struct);;
}
//3判断是否有信号被定义, 有这读操作被唤醒,KILL——FASYNC 给应用层发送数据
if(hello_fasync_struct)
kill_fasync(&hello_fasync_struct, SIGIO, POLL_IN);
//4初始化信号处理
static int hello_fasync (int fd, struct file *file, int on)
{
return fasync_helper(fd, file, on, &hello_fasync_struct);;
}