gpt4 book ai didi

linux - pthread_rwlock_t 跨进程 : Repair after crash?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:28:57 24 4
gpt4 key购买 nike

我在 linux 上工作,我正在使用 pthread_rwlock,它存储在共享内存中并在多个进程之间共享。这大部分工作正常,但是当我杀死一个持有锁的进程 (SIGKILL) 时,看起来锁仍然持有(无论它是读锁还是写锁)。

有没有办法识别这种状态,甚至可能修复它?

最佳答案

真正的答案是找到一个合适的方法来停止进程。用 SIGKILL 杀死它不是一个合适的方法。

此功能是为 mutexes 指定的,称为稳健性 (PTHREAD_MUTEX_ROBUST) 但不适用于 rwlocks。该标准没有提供它,kernel.org 甚至没有关于 rwlocks 的页面。所以,就像我说的:

  • 寻找另一种方法来停止进程(也许是另一个可以处理的信号?)
  • 退出时释放锁

关于linux - pthread_rwlock_t 跨进程 : Repair after crash?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6580120/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com