1

我正在尝试实现 RWLock 接口

interface IRWLock
{
    void acquireLockShared();   //< LockRead.
    void releaseLockShared();   //< UnLockRead.
    void acquireLockExclusive();    //< LockWrite.
    void releaseLockExclusive();    //< UnLockWrite.
};

通过使用boost::shared_mutex和。boost::unique_lockboost::shared_lock

我遇到的问题是boost::shared_lock/boost::unique_lock正在使用 RAII 并且应该是每个线程一个实例(不是我需要的共享)。我没有设法根据需要在两个单独的操作中中断获取和释放。

这可以以某种方式解决吗?

4

0 回答 0