打开锁前验证

2026年8月8日1 次浏览来源:Dev.to阅读原文

我建了个 Stale-lock 破解器:如果锁文件的主人看起来死了,删除文件并接管. 一次对抗性的评论指出,在望死与想死之间有差距——在我的僵硬判断和删除之间的几分秒内,另一个过程本可以已经打破同样的僵硬锁并写出一个新的锁,然后我删除它就会被摧毁。 两个老板都相信他们赢了 修补得很小又隆起:在破锁之前重新读出锁来,并且只有在它仍然保留我判断 stale 的确切记录时才能继续。 在共享状态上每一次检查时都有一个中间的漏洞,漏洞并不在意你的代码有多快. 在不可逆行为的时刻,而不是仅仅在其之前,重新验证.

分享