欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

信号高级特性

程序员文章站 2022-03-19 13:15:20
...
#include<signal.h>
int sigqueue(pid_t pid,int sig,const union sigval value);   //将sig指定的实时信号发送给有pid指定的进程
union sigval{
int sival_int;
void *sival_ptr;
};//联合体,所以只能给其中一个赋值

int sigsuspend(const sigset_t *mask);   //  sigsuspend()系统调用将以mask所指向的信号集来替换进程的信号掩码,然后挂起进程的执行,知道捕获到信号,并从信号处理器中返回,一旦处理器返回,sigsuspend()会将进程掩码恢复为调用前的值

int sigwaitinfo(const sigset_t *set,siginfo_t *info);       //同步接受信号
int sigtimedwait(const sigset_t *set,siginfo_t *info,const struct timespec *timeout);   //sigwaitinfo()调用的便提,区别是运行指定等待时限
struct timespec{
time_t tv_sec;
long tv_nsec;
};

#include<sys/signalfd.h>
int signalfd(int fd,const sigset_t *mask,int flags);        //通过文件爱你描述符来获取信号

信号高级特性

相关标签: 信号