[英]How do I eliminate the possibility of simultaneous aceess of a Notes Document
在我们的项目中,我们有以下内容:
带有字段的 Notes 文档列表:
我决定编写一个 Java 方法来更新令牌(每 30 分钟一次)。 基本上,它将遍历列表,对他们的系统执行 REST 方法,最后我们将获得一个新令牌并将其写入文档。 没有那么多文件(实际上总是少于10个,但是请求可能需要很多时间)
然而,我偶然发现了一个问题。 如果用户的请求将与令牌刷新同时执行怎么办? 遇到这样的情况,我们应该如何处理? 我应该有类似锁的东西来消除这种可能性吗? 而在每个用户请求的代码中,我们应该只有在文档解锁时才发送请求? 我们怎么能“等待”解锁呢?
提前致谢。
只需使用 Notes 中的默认锁定机制:需要在数据库属性中启用文档锁定。 然后您可以执行以下操作:
If doc.lock( timestamp ) then
'Document has not been locked previously
'Your code comes here
'Don‘t forget to unlock at the end
End if
参数通常是用户名,那么为什么要使用时间戳作为“伪用户”呢? “锁定”用户始终是代码的签名者,您需要区分不同的调用,因此使用时间戳来唯一标识会话。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.