尝试访问同一文件的两个I / O操作会导致nodeJS中的竞争条件吗?

时间:2016-09-08 15:41:24

标签: javascript node.js multithreading asynchronous promise

我想创建两个目录。 1. / tmp / xyz / dir1 2. / tmp / xyz / dir2

我宣传fs.mkdirmkdirPromisified然后:

let mkdirProcesses = [];
mkdirProcesses.push(mkdirPromisifed('/tmp/xyz/dir1'));
mkdirProcesses.push(mkdirPromisifed('/tmp/xyz/dir2'));
return Promise.all(mkdirProcesses);

这段代码到底会做什么?由于JavaScript中的I / O是异步的,我假设这会在操作系统级别创建两个线程,或者我的假设错了?如果没有,这两个线程是否会同时尝试访问相同的基本目录结构('/ tmp / xyz')并导致竞争条件?如果是这样,什么是更好的解决方案来完成我想要做的事情?我想要创建的目录数量不是静态的。

0 个答案:

没有答案