UNIX sigwait函数的用法

来源:互联网 发布:中文数据库 编辑:程序博客网 时间:2024/05/01 19:45

#include <signal.h>

int sigwait(const sigset_t *restrict set, int *restrict signop);


Returns: 0 if OK, error number on failure


在使用sigwait函数之前需要将set信号集中的信号阻塞掉,此时调用sigwai函数会阻塞,当set中的信号发生的的时候,因为该信号时被阻塞的,所以该信号此时处于未决状态(在接收信号的进程的task_struct上挂起该信号),这个时候sigwait就会发现这个未决信号,然后取消这个信号的阻塞,此时这个挂起信号便被移除。sigwait返回,返回之前又再次恢复之前的信号屏蔽字。


APUE 12-6的程序清单对于理解sigwait非常有帮助

0 0
原创粉丝点击