Является ли python's shutil.move () атомарным в Linux? - PullRequest
15 голосов
/ 15 сентября 2010

Мне интересно, атомарный ли python's shutil.move на linux?Отличается ли поведение, если исходный и целевой файлы находятся в двух разных разделах, или это то же самое, что и в том случае, если они присутствуют в одном и том же разделе?исходный и целевой файлы находятся в одном разделе!

1 Ответ

17 голосов
/ 15 сентября 2010

Не атомарно, если файлы находятся в разных файловых системах.В этом случае python открывает исходный и целевой файл, зацикливается на чтении из исходного и записи в адресат и, наконец, отменяет связь исходного файла.

Если исходный и целевой файлы находятся в одной файловой системе, pythonиспользует вызов rename () C, который является атомарным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...