C++實現文件更改提示
代碼如下:
# include
# include
# include
* static volatile原子變量*/
static volatile SIG _ atomic _ t sigflag = 0;
static void turn flag(int no){
SIG flag =(SIG flag = = 0)?1 : 0;
}來源:考試網
int init Handler(int signo){
struct SIG action act;
act . sa _ handler = turn flag;
act . sa _ flags = 0;
if((sigemptyset(&act . sa _ mask)=-1)| |
(sigaddset(& act . sa _ mask,signo)= =-1)| |
(sigaction(signo,& act,NULL)=-1))
return-1;
返廻0;
}
int control SIG(int signo){
sigset _ t act block,actold;
if((sigprocmask(SIG _ set mask,NULL,& act unblock)=-1)| |
(sigprocmask(SIG _ set mask,NULL,&actblock)= =-1)| |
(sigaddset(& act BLOCK,signo)|
(sigdelset(& act unblock,signo)=-1)|
(sigprocmask(SIG _ BLOCK,& act BLOCK,& actold)= = =-1))
0條評論