Python:检查文件是否存在,同时避免竞争条件,无需打开文件

时间:2014-01-10 19:06:13

标签: security python-3.x race-condition large-files file-exists

有没有办法检查文件是否存在,避免任何潜在的竞争条件,而不是将文件读入内存?

我见过使用try / catch来避免竞争条件的例子,但是他们都将文件读入内存,例如:

with open filename as file

我有一个大文件(大约100mb),我需要检查其存在,但出于安全考虑,我希望避免在检查时创建竞争条件。将整个文件读入内存是不切实际的。我没想到什么?

我是新人,要温柔。

1 个答案:

答案 0 :(得分:1)

竞争条件规避的完整目的 严格,以便打开的文件是检查过的文件。试图拥有一个没有另一个是不合理的。

此外,open()不会将文件读入内存,所以问题的一部分甚至没有意义。