c++ - 你怎么知道 QMutex 是否被锁定?

标签 c++ qt qt4

有没有人知道如何在不使用函数的情况下检查 QMutex 是否被锁定:

bool QMutex::tryLock()

我不想使用 tryLock() 的原因是因为它做了两件事:

  1. 检查互斥锁是否被锁定。
  2. 如果没有上锁,就上锁。

出于我的目的,我对执行第二步(锁定互斥锁)不感兴趣。

我只是想知道它是否被锁定。

最佳答案

根据定义,尝试锁定互斥锁是判断它是否被锁定的唯一方法;否则当这个虚构的函数返回时,你怎么知道互斥锁是否仍然被锁定?函数返回时它可能已解锁;或者更重要的是,如果不执行所有必要的缓存刷新和同步来锁定它,您实际上无法确定它是否被锁定。

关于c++ - 你怎么知道 QMutex 是否被锁定?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8683076/

相关文章:

python - QtDesigner4 中的 matplotlib 小部件

c++ - 在 QTextEdit 中更改文本

qt - PyQt - 如何从给定的小部件获取顶级父级?

c++ - 接受对话框时如何调用带有参数的插槽?

c++ - 如何创建可调整大小的 Qt 缩略图预览?

c++ - 设计题: Holding class metadata for dynamic lookup

c++ - C++ 中的无休止循环,比较两个字符

c++ - 我如何使用 KDevelop 查看在何处引用空指针?

java - 依赖注入(inject): templates (/generics) or virtual functions?

c++ - 无法正确 memcpy 一个 char 数组来构造