如何设置资源锁定的到期时间?

Posted

技术标签:

【中文标题】如何设置资源锁定的到期时间?【英文标题】:How to set expiry for lock on resource? 【发布时间】:2012-10-02 11:41:41 【问题描述】:

我的程序将使用共享资源,因此需要锁定该资源。

当启动此资源上的处理任务时,它将获得对该资源的锁定。完成后会释放锁。

为了应对处理任务期间的崩溃和电源故障,这将使锁永远处于开启状态,锁应该有一个到期时间。

如果执行涉及资源的处理任务所花费的时间通常在0到5秒之间,我认为到期时间应该在10分钟甚至1小时左右。

那么我应该如何应对处理任务实际上比到期时间更长的异常情况?

任务本身的到期时间是否应该小于锁的到期时间?

【问题讨论】:

【参考方案1】:

我猜你正在处理远程资源。锁处理应在其一侧完成。调用者在获取它时应该指定锁超时,并且您应该支持锁所有者在需要时请求更长的超时的方法。

【讨论】:

以上是关于如何设置资源锁定的到期时间?的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式锁定 Chromebook?

ZF2 Redis:如何设置密钥的到期时间

如何设置windows的账户锁定时间

如何为 Firestore 文档设置到期日期 [重复]

关于WinForm/Web如何使用缓存Cach

微服务环境下如何不长时间锁定资源进行写操作?