処理が完了してもロックされたファイルは削除されていないようです。flock
このファイルを保存する理由はありますか?また、flock
ロックが獲得されたかどうかを知ることができますか?
crontab
以下はファイルの例です。
* * * * * flock python <script_name>.py
ベストアンサー1
ほとんどのユースケースでは、flock
ファイルのロックが非常に重要です。いいえ「清掃」してください。それ以外の場合は、次のシナリオを想像してください。
- プロセスAはロックファイルを開き、そのファイルが存在しないことを確認して生成する。
- プロセスAがロックを獲得する。
- プロセスBはロックを開きます(すでに存在していることが確認されています)。
- プロセスBはロックを取得しようとしますが、待つ必要があります。
- プロセスAはロックを解除します。
- プロセスBは即座にロックを獲得する。
- プロセスAはロックファイルを削除します。
- プロセスCは、ロックファイルを開き、そのファイルが存在しないことを確認し、新しいロックファイルを生成する。現在は開いています。その他プロセスBがファイルをロックしました。
- プロセスCはロックを獲得しようとし成功する。ただし、プロセスBはまだロックファイルの[以前のバージョン]を開いてロックされているので、待つ必要があります。