Python并发只读,是否有锁?

python并发同时读一个文件,是否会因为文件锁影响读,如果有的话,该如何避免?

#

我的理解是没有问题,文件锁是用来解决文件同步的,但是只有读,就可以理解为无所谓了。

从概念上说,大家一起读,没人(包括外人)去写的话是不需要锁的。
另外,文件锁是“建议锁”,不是“强制锁”,也就是说,如果一个程序完全无视这个锁,直接打开并读写文件,这个锁不会发挥作用。
但有一点你要注意,file对象本身不能在多线程/进程中安全的共享,如果你需要多个线程/进程读文件,你需要在每个线程/进程中自己打开文件生成file对象,或者,给file对象加个锁,不过这应该不是你想要的。

发表评论

电子邮件地址不会被公开。 必填项已用*标注