Я хотел бы реализовать механизм совместной блокировки файлов в Python, который бы также работал на удаленных разделах (например, NFS), с простым кодом (я хочу избегать использования стороннего модуля, потому что я хочу некоторый определенный открытый исходный код не должен иметь зависимостей).
Существуют решения, которые выглядят относительно кроссплатформенными, но они более сложны , чем мне бы хотелось: в идеале на всех платформах должны работать одинаковые строки кода.
Решение состоит в том, чтобы использовать некоторую атомарную операцию , которая пытается создать блокировку и терпит неудачу, если не может (например, блокировка в форме каталога). Создание каталога является атомарным в Unix , так что это хороший первый шаг. Теперь, что было бы эквивалентным решением для Windows ? Я где-то читал, что, возможно, создание ссылки (как?) Будет атомарным; если создание каталога является атомарным в Windows , это было бы еще лучше, поскольку один и тот же код мог бы использоваться как для Windows, так и для Unix, но я не могу выяснить, так ли это.
Подводя итог : что будет простой , кроссплатформенный Python код (без библиотеки) для создания (и выпуска) ) кооперативная блокировка файлов , которая также работает на удаленных разделах? Маршрут создания каталога выглядит многообещающе, но работает ли он в Windows?