当前位置: 技术问答>linux和unix
linux下信号量的释放的问题
来源: 互联网 发布时间:2016-11-17
本文导语: 程序在结尾处会调用semctl的IPC_RMID命令,进行删除semaphore的操作,但是如果程序被用户杀死(比如说:ctrl+c),那么这时的信号量将不会被删除,求教:有没有什么一般性的经验做法,处理这一类问题,谢谢 ...
程序在结尾处会调用semctl的IPC_RMID命令,进行删除semaphore的操作,但是如果程序被用户杀死(比如说:ctrl+c),那么这时的信号量将不会被删除,求教:有没有什么一般性的经验做法,处理这一类问题,谢谢
|
可以捕获SIGINT,然后在信号处理函数中进行IPC_RMID
但是如果进程是被kill -9杀死的,那就没招了
但是如果进程是被kill -9杀死的,那就没招了