2016-04-04 2 views
-1

Я пытаюсь использовать модуль блокировки python, но этот модуль создает временный файл для блокировки. Если сценарий был прерван (например, перезагрузка сервера), этот временный файл не удаляется, и файл остается заблокированным.Как заблокировать файл без создания временных файлов?

+0

Поместите файл блокировки в '/ tmp'? – jDo

ответ

1

Вы можете использовать модуль FCNTL

import fcntl 
fcntl.flock('myfile', fcntl.LOCK_EX | fcntl.LOCK_NB) 

второй параметр здесь флаги, которые определяют, каким образом вы хотите, чтобы заблокировать файл, см The doc

Я не уверен, что это работает на не Unix-подобные системы

Смежные вопросы