Модуль fcnt Python предоставляет метод, называемый [flock] [1], для доказанной блокировки файлов. Это описание гласит:Функция fcntl.flock python обеспечивает блокировку доступа к файлу уровня потока?
Выполните операции блокировки цит на файл дескриптора дескрипторе (файловые объекты обеспечения метод fileno() принимается в качестве хорошо). Подробную информацию см. В руководстве по установке Unix (2) . (. В некоторых системах, эта функция эмулируются с использованием Fcntl())
Глядя страницу Linux человек для стада, оно относится только пересечь процесс блокировки, например:
Вызов для flock() может блокироваться, если несовместимая блокировка удерживается другим процессом . Чтобы сделать неблокирующий запрос , включите LOCK_NB (ORing) с любой из вышеперечисленных операций.
Итак, мой вопрос: будет ли flock() также обеспечивать надежную блокировку потоков и блокировать несколько потоков в рамках одного процесса, а также потоков из разных процессов?
[1]: http://docs.python.org/library/fcntl.html#fcntl.flockfunction эмулируется с помощью Fcntl())
Вы говорите круглым способом, что для правильного использования блокировки вам нужно получить различный дескриптор файла в каждом контексте? –