|
#include <signal.h>
#include <stdio.h>
int main(void)
{
sigset_t newmask,oldmask;
sigemptyset(&newmask);
sigaddset(&newmask,SIGINT);
sigemptyset(&oldmask);
sigprocmask(SIG_BLOCK,&newmask,NULL); #把newmask set to mask set.
sigprocmask(SIG_SETMASK,&newmask,&oldmask); #mask copy ??
sigprocmask(SIG_UNBLOCK,&newmask,NULL); #unblock the org mask set.
printf("done ,start sleep 6 second\n");
sleep (6);
sigprocmask(SIG_UNBLOCK,&oldmask,NULL); #umblock the dst mask set
exit(0);
}
不`懂得怎么把BLOCK的newmaskCP给oldmask...,让oldmask也成为BLOCK信号集。
:help 请教大家!! |
|