当前位置: 技术问答>linux和unix
信号量释放
来源: 互联网 发布时间:2016-07-28
本文导语: 两个进程A B之间共用信号量 当A通过 _semId = semget( key, 0, semFlags )创建信号量后, B用已经创建号的信号量。 但当A退出时,将删除创建的信号量 semctl( _semId, 0, IPC_RMID ), 而B仍然用这个信号量,导致了A B不...
两个进程A B之间共用信号量
当A通过 _semId = semget( key, 0, semFlags )创建信号量后,
B用已经创建号的信号量。
但当A退出时,将删除创建的信号量 semctl( _semId, 0, IPC_RMID ),
而B仍然用这个信号量,导致了A B不能继续正常工作。
该如何处理呢?
当A通过 _semId = semget( key, 0, semFlags )创建信号量后,
B用已经创建号的信号量。
但当A退出时,将删除创建的信号量 semctl( _semId, 0, IPC_RMID ),
而B仍然用这个信号量,导致了A B不能继续正常工作。
该如何处理呢?
|
我是问如果创建一方删除了信号灯的话,另一方是否可以知道?
------------------------------
没办法知道
只是操作的时候会返回error,设置errno
你一定要通知,得自己用其他通信机制
------------------------------
没办法知道
只是操作的时候会返回error,设置errno
你一定要通知,得自己用其他通信机制