如何使用带有RwLock的Condvar?

时间:2018-11-17 21:38:11

标签: multithreading rust

我有几个线程在同一个Condvar中等待,这些线程与包装在RwLock中的数据相关联。我想在保持对数据的写入锁定之后调用Condvar::wait并检查条件,但是看来Condvar::wait仅接受MutexGuard作为参数。由于还有许多其他部分将此数据用作只读变量,因此我不能简单地将RwLock替换为Mutex

如何将CondvarRwLock包装的数据一起使用?

1 个答案:

答案 0 :(得分:0)

有关将CondVarRwLockGuard一起使用的示例,请参见https://github.com/Amanieu/parking_lot/issues/165