【发布时间】:2017-12-05 19:47:07
【问题描述】:
我有一个对象 A,其中包含一堆需要同步的字段。我想强制执行以下属性:
1) 多个线程一次可以读取对象的字段。 2) 如果至少有一个线程正在读取对象,则不能修改对象。 3) 如果正在修改对象,则没有线程可以读取该对象。
换句话说,我想要一个这样的锁,任何数量的读者都可以持有该锁。但是,如果任何作者持有锁,则没有其他人可以持有锁。
我该怎么做?我正在使用 C++,但我希望应该有一种独立于语言的方式。
【问题讨论】:
标签: concurrency locking