会杀死进程/线程释放互斥锁吗?

时间:2014-09-29 16:48:21

标签: c linux pthreads mutex apc

多个进程访问共享内存,将其与互斥锁和pthread_mutex_lock()锁定以进行同步,并且可以随时终止每个进程(实际上我描述php-fpm扩展名为APC,但这并不重要 如果进程锁定互斥锁然后被杀死,那么互斥锁是否会自动解锁? 或者有没有办法自动解锁?

编辑:事实证明,在这种情况下,死亡进程和线程的行为类似,这取决于robust attribute of mutex

1 个答案:

答案 0 :(得分:1)

这取决于互斥锁的类型。 A"健壮"互斥将在线程/进程死亡后继续存在。请参阅此问题:POSIX thread exit/crash/exception-crash while holding mutex

将尝试锁定它的下一个线程将收到EOWNERDEAD错误代码

注意:从评论中收集信息。