线程同步信号量相关知识

发布时间 2023-04-03 15:38:53作者: 冬枭

 

 1.sigset_t 是信号集及信号集操作函数,信号集被定义为一种数据类型。

2.sigemptyset(&signal_mask) 将参数set信号集初始化并清空

3.sigaddset ,标识当前signal_mask处理的程序的代码正在运行时不会出现SIGINT信号

另一方面,如果你注释掉sigaddset(&act.sa_mask, SIGINT);,你只剩下一个用sigemptyset(&act.sa_mask);创建的空信号列表。因此,在 SIGALRM 处理程序函数运行时发生的任何信号都可能抢占该处理程序并为该其他信号执行信号处理程序。

 4.pthread_sigmask 在多线程的程序里,希望只在主线程中处理信号,可以使用该函数。