gpt4 book ai didi

c++ - ACE_Mutex::acquire 问题

转载 作者:太空宇宙 更新时间:2023-11-04 12:26:50 25 4
gpt4 key购买 nike

我的类(class)有一个互斥锁,定义如下:

ACE_Mutex m_specsMutex;

当我使用不带参数的 acquire() 方法时,一切正常。但是当我将它与时间值一起使用时(如下所示),它会立即返回 -1 值。我确定此互斥锁未在其他任何地方获取,因此它不应返回 -1。

m_specsMutex.acquire(ACE_OS::gettimeofday() + ACE_Time_Value(30))

我做错了什么吗?

最佳答案

浏览 ACE_Mutex 的 doxygen 文档,我不明白您的代码如何编译。超时值 (tv) 通过引用或指针传递,以便 acquire() 可以更新获取互斥锁的绝对时间。您不能传递表达式。像这样尝试:

ACE_Time_Value time = ACE_OS::gettimeofday() + ACE_Time_Value(30);
m_specsMutex.acquire(&time);

关于c++ - ACE_Mutex::acquire 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1988192/

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