我搜索了 Bash 如何创建互斥锁。我遇到了两种在 Bash 中创建互斥锁的不同方法。两者都是 stackoverflow 答案,并且都有 >100 的赞成票:一个答案使用mkdir,另一个答案使用flock.
在 bash 中创建互斥锁时,我应该使用flockormkdir吗?
我搜索了 Bash 如何创建互斥锁。我遇到了两种在 Bash 中创建互斥锁的不同方法。两者都是 stackoverflow 答案,并且都有 >100 的赞成票:一个答案使用mkdir,另一个答案使用flock.
在 bash 中创建互斥锁时,我应该使用flockormkdir吗?
阅读这两个答案似乎两个答案都提供了创建互斥锁的解决方案,但是在某些情况下您需要使用flock,而在某些情况下您需要使用mkdir:
flock
flock--> 你被迫使用mkdir
flock则必须重新发明轮子mkdir用于创建互斥锁意味着您的代码不会立即传达目的-> 而 usingflock意味着您的代码不言自明地说“此代码正在实现同步”mkdir创建互斥锁的有效解决方案,因此mkdir以这种方式使用可能会使您的代码有更多的代码气味(特别是如果您的发行版flock可用并且您选择不使用它)