【发布时间】:2016-01-25 13:35:42
【问题描述】:
我知道在 C++14 中使用 boost::UpgradeLockable 是可能的。
C++11 有没有类似的东西?
【问题讨论】:
-
不幸的是直到 c++17:en.cppreference.com/w/cpp/thread/shared_mutex
-
@RichardHodges 我看不出该链接有何相关性。该界面中的哪个位置允许升级锁?
-
@Yakk 嗯,你是对的。那么这就引出了一个问题,标准提案是否缺少某些内容,或者可升级的锁根本没有必要?
-
@RichardHodges 如果在客户端代码中可以像在
std中一样高效地完成它,那么此时我们是否应该将它放在std中?也许吧。 -
我不明白你的问题。如果要使用 Boost.Threads,那么为什么需要 C++14? Boost.Threads 多年来一直拥有可升级的
shared_mutex,并且只需要 C++98。
标签: c++ c++11 readwritelock