在Python 中鎖定檔案以進行同時存取
在Python 中,保護檔案免受多個進程的並發修改嘗試需要有效的檔案鎖定機制。然而,事實證明,尋找跨平台解決方案具有挑戰性。
更新(2024 年 6 月)
現代 Python 提供了幾個可靠的跨平台檔案鎖定選項:
原始答案
之前,已實施並共享了自訂解決方案(現已存檔)。它的工作原理如下:
from filelock import FileLock with FileLock("myfile.txt.lock"): # File operations with exclusive access print("Lock acquired.")
此解決方案使用 FileLock 類別建立一個名為「myfile.txt.lock」的鎖定檔案。當 with 區塊處於活動狀態時,主 Python 腳本保持對檔案的獨佔訪問,防止其他進程修改它。當區塊結束時,鎖會自動釋放。
以上是如何在Python中實現跨平台檔案鎖定以防止並發修改?的詳細內容。更多資訊請關注PHP中文網其他相關文章!