以下是方案。鲍勃是一位作家,爱丽丝是一位读者。鲍勃写东西,艾丽斯读它们。规则是:虚拟锁机制:非阻塞写入,读取和无效
1)Bob可以写出Alice是否正在读取(读取不阻止写入)。
2)当鲍勃写信时,艾丽斯无法读取(写入块读取)。 3)当Alice完成阅读时,她可以知道Bob在她的阅读过程中是否写过(读者可以检测到他们刚才阅读的数据是否无效)。
2)和3)实际上是一个组合规则,但我列出了两个好的讨论。这个问题可以通过一个互斥体和一个计数器(版本号)来解决,但我不知道的是,上面是一个常用名称的公知方案?有没有对此做过研究?
可能是你谈论交易吗? 1.收集数据2.锁定互斥锁3.存储4.解锁 – user5821508
关于1)和2):当爱丽丝正在阅读和鲍勃想写什么? 1)和2)在这种情况下似乎是矛盾的 – bolov
@ user5821508对于Bob,它是无锁的。直接存储数据。 – mzer0