なぜロックファイルを整理しないのですか? [閉鎖]

なぜロックファイルを整理しないのですか? [閉鎖]

処理が完了してもロックされたファイルは削除されていないようです。flockこのファイルを保存する理由はありますか?また、flockロックが獲得されたかどうかを知ることができますか?

crontab以下はファイルの例です。

* * * * * flock python <script_name>.py

ベストアンサー1

ほとんどのユースケースでは、flockファイルのロックが非常に重要です。いいえ「清掃」してください。それ以外の場合は、次のシナリオを想像してください。

  • プロセスAはロックファイルを開き、そのファイルが存在しないことを確認して生成する。
  • プロセスAがロックを獲得する。
  • プロセスBはロックを開きます(すでに存在していることが確認されています)。
  • プロセスBはロックを取得しようとしますが、待つ必要があります。
  • プロセスAはロックを解除します。
  • プロセスBは即座にロックを獲得する。
  • プロセスAはロックファイルを削除します。
  • プロセスCは、ロックファイルを開き、そのファイルが存在しないことを確認し、新しいロックファイルを生成する。現在は開いています。その他プロセスBがファイルをロックしました。
  • プロセスCはロックを獲得しようとし成功する。ただし、プロセスBはまだロックファイルの[以前のバージョン]を開いてロックされているので、待つ必要があります。

おすすめ記事