gpt4 book ai didi

boost - std::lock/std::try_lock 是否有 try_lock_for 和 try_lock_until 的模拟?

转载 作者:行者123 更新时间:2023-12-01 15:32:32 25 4
gpt4 key购买 nike

当获取多个互斥量(或使用 boost,互斥量的迭代器范围)时,我们可以使用 std::lockboost::lock以避免由于锁顺序导致的死锁。有类似的 std::try_lockboost::try_lock 函数使用 Lockable 概念。

还有 TimedMutex概念,添加方法 try_lock_fortry_lock_until 将超时语义添加到 try_lock。是否有类似 std::lock 的计划?提供死锁避免并支持超时语义(大概是 std::try_lock_for(Lockable1& lock1, Lockable2& lock2, LockableN& lockn...)std::try_lock_until(Lockable1& lock1, Lockable2& lock2, LockableN& lockn...))?

同样,是否为 SharedTimedMutex 计划了避免死锁的功能?函数 lock_sharedtry_lock_sharedtry_lock_shared_fortry_lock_shared_until?

最佳答案

不,我不知道有任何添加这些功能的建议。

我也不认为过去有任何提案,但我可能在一年前的 C++0x 过程中就错过了。

我认为这些函数的用例比 std::lockstd::try_lock

的用例要少得多

关于boost - std::lock/std::try_lock 是否有 try_lock_for 和 try_lock_until 的模拟?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23258359/

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