如何可靠地获取表格的内容,然后对其进行更改,而不会出现间隙或重叠?随着时间的推移,我试图最终获得一致的表格视图。
我可以先查询数据库,然后订阅更改源,但这些查询之间可能存在修改发生的间隙。
或者我可以先订阅更改,然后查询表,但随后可能会在查询中处理的更改提要中发生修改。
这种情况的例子:
A subscribe 'messages'
B add 'messages' 'message'
A <- changed 'messages' 'message'
A run get 'messages'
A <- messages
这里 A 在发送消息查询之前收到了“已更改”消息,并且消息查询的结果包括已更改的消息。可能 A 在收到查询结果之前可以简单地忽略任何更改的消息。是否保证在查询后(在同一连接上)收到的更改尚未应用于前一个查询,即在同一线程上处理?
推荐的方法是什么?我找不到有关此用例的任何文档。