假想的锁定机制:非阻滞写,阅读和无效



这是场景。鲍勃(Bob(是一位作家,爱丽丝(Alice(是读者。鲍勃(Bob(写东西,爱丽丝(Alice(读了它们。规则是:

1(鲍勃可以写出爱丽丝是否正在阅读(阅读不会阻止写信(。

2(当鲍勃(Bob(写作时,爱丽丝(Alice(无法阅读(写作确实屏蔽读数(。

3(当爱丽丝完成阅读时,她可以知道鲍勃在阅读过程中是否写过(读者可以检测他们刚刚阅读的数据是否有效(。

2(和3(实际上是一个综合规则,但我列出了两个进行良好讨论。这个问题可以通过一个静音和一个计数器(版本编号(来解决,但是我不知道的是,上面是具有常用名称的众所周知的方案吗?对此有任何研究吗?

我不知道的是,问题是一个以术语命名的众所周知的情况?

是的,称为seqlock:https://en.wikipedia.org/wiki/seqlock

有人在上面学习还是我只是做轮子?

afaik有多种实施(例如Linux内核(和论文。

最新更新