关于进程间通信的一些小方法

关于进程间通信的一些小方法:

 

1.判断信号量是否存在:sem_id = semget(SEM_KEY, 0, 0) 等于 1 则存在,不等于1,不存在。

 

2.安装信号处理器。

 

action.sa_handler = catch_ctrl_c;

sigemptyset(&action.sa_mask);

action.sa_flags = 0;

if(sigaction(SIGINT, &axtion, NULL) == -1)

perror("can not install the handler for SIGINT");

 

void catch_ctrl_c(){

if(semctl(sim_id, 0, IPR_RMID, O) == -1){

perror("Remove Semaphore");

exit(0);

}  

你可能感兴趣的:(关于进程间通信的一些小方法)