python的shutil.copyfile()是原子的吗?

python的shutil.copyfile()是原子的吗?,第1张

概述我正在编写一个 python脚本,在 Linux上使用 shutil.copyfile()复制文件.在复制过程中,其他进程可能正在尝试读取该文件.以下内容是否足以确保外部进程不会损坏文件? os.unlink(dest)shutil.copyfile(src, dest) 也就是说,是shutil.copyfile()原子,以便其他进程在复制 *** 作完成之前无法读取目标文件? 不,它似乎只是 loo 我正在编写一个 python脚本,在 Linux上使用 shutil.copyfile()复制文件.在复制过程中,其他进程可能正在尝试读取该文件.以下内容是否足以确保外部进程不会损坏文件?
os.unlink(dest)shutil.copyfile(src,dest)

也就是说,是shutil.copyfile()原子,以便其他进程在复制 *** 作完成之前无法读取目标文件?

解决方法 不,它似乎只是 loop,reading and writing 16KB at a time.

对于原子复制 *** 作,您应该将文件复制到同一文件系统上的不同位置,然后将os.rename()复制到所需位置(在linux上保证是原子的).

总结

以上是内存溢出为你收集整理的python的shutil.copyfile()是原子的吗?全部内容,希望文章能够帮你解决python的shutil.copyfile()是原子的吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1206517.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存