我使用 pthread_mutex_t 来同步同一级别的多个进程之间对资源的访问(即不存在父/子关系)。
如何确定何时可以安全地调用 pthread_mutex_destroy?我能想到的在不引入竞争条件的情况下确定互斥体是否被另一个进程使用的唯一方法是引入另一个互斥体。
最佳答案
从我的头顶上 -
- 使用信号量(或共享内存计数器)
- 确定领导者(第一个创建互斥锁的进程)是 将会摧毁它的那个,并且不要退出此进程,直到 其余的都关闭了。
- 在外部创建互斥锁,并将其删除 外部 - 进程认为这是理所当然的(也许永远不会删除 它;取决于系统)
等等...
关于linux - 多个进程中的pthread_mutex_t...谁破坏了它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28616084/