相关疑难解决方法(0)

制作目录时出现Python"FileExists"错误

我在集群系统上有几个并行运行的线程.每个python线程输出到一个目录mydir.每个脚本在输出检查之前是否存在mydir,如果不存在则创建它:

if not os.path.isdir(mydir):
    os.makedirs(mydir)
Run Code Online (Sandbox Code Playgroud)

但这会产生错误:

os.makedirs(self.log_dir)                                             
  File "/usr/lib/python2.6/os.py", line 157, in makedirs
mkdir(name,mode)
OSError: [Errno 17] File exists
Run Code Online (Sandbox Code Playgroud)

我怀疑这可能是由于竞争条件,一个工作在另一个工作之前创建了dir.这可能吗?如果是这样,如何避免这种错误?

我不确定这是一个竞争条件,所以想知道Python中的其他问题是否会导致这个奇怪的错误.

python filesystems queue file-io cluster-computing

37
推荐指数
3
解决办法
5万
查看次数

标签 统计

cluster-computing ×1

file-io ×1

filesystems ×1

python ×1

queue ×1