开发者社区 问答 正文

will_wait_for 函数的主要作用是什么?

will_wait_for 函数的主要作用是什么?为什么需要调用 materialize_fast_path_locks?

展开
收起
不吃核桃 2024-08-06 08:14:15 52 分享 版权
1 条回答
写回答
取消 提交回答
  • will_wait_for 函数的主要作用是通知死锁检测器,当前线程正在等待某个资源,因此需要在等待图中添加一条边。调用 materialize_fast_path_locks 是为了确保所有通过“快速路径”获取的锁都被“物化”,即添加到 MDL_lock::m_granted 链表中,以便它们能被死锁检测器探测到。这是因为如果快速路径的锁不被物化,它们就不会出现在等待图中,可能导致死锁被遗漏。

    2024-08-06 14:45:46
    赞同 2 展开评论
问答地址: