Tôi có hai tập lệnh Python, cả hai đều cần khoảng thời gian đều đặn (nghĩ cronjobs) để gọi một chương trình bên ngoài.Có cách nào để ngăn không cho hai chương trình Python thực thi cùng một nhị phân cùng một lúc không?
Nếu chương trình này (mà chúng tôi không kiểm soát) được gọi hai lần đồng thời, lỗi dữ liệu xảy ra, vì vậy chúng tôi cần có cách để đồng bộ hóa cuộc gọi đến nhị phân này.
Có cách nào để thực hiện việc này hay không, tốt nhất là chỉ sử dụng thư viện chuẩn của Python?
Chỉ cần sử dụng khóa dựa trên tệp mà mỗi tập lệnh kiểm tra trước khi thực thi nhị phân bên ngoài. –
Nếu chương trình ở bên ngoài, cả hai tập lệnh đều có thể chia sẻ tệp "khóa" đơn giản. – Alex
Tôi không * nghĩ * có một giải pháp sẵn sàng để sử dụng trong stdlib; nhưng có [lockfile] (https://pypi.python.org/pypi/lockfile) –