Node.js Chokidar在Windows上为一个目录运行多个读取目录进程

Node.js Chokidar在Windows上为一个目录运行多个读取目录进程,node.js,electron,fs,watch,chokidar,Node.js,Electron,Fs,Watch,Chokidar,我注意到Windows上的chokidar运行的读取进程与所选目录中的文件一样多。这只发生在Windows上,因为Mac OS chokidar每个目录只运行一个读取进程 经过一些研究,chokidar似乎运行了一个巨大的循环,通过读取操作加载CPU,并使电子应用程序运行缓慢 _read进程是由chokidar触发的readdirp库生成的,用于扫描所选目录,但我不明白为什么会有这么多操作,特别是针对mac的只有1个操作 以下是chokidar配置的示例: const options = {

我注意到Windows上的chokidar运行的读取进程与所选目录中的文件一样多。这只发生在Windows上,因为Mac OS chokidar每个目录只运行一个读取进程

经过一些研究,chokidar似乎运行了一个巨大的循环,通过读取操作加载CPU,并使电子应用程序运行缓慢

_read进程是由chokidar触发的readdirp库生成的,用于扫描所选目录,但我不明白为什么会有这么多操作,特别是针对mac的只有1个操作

以下是chokidar配置的示例:

const options = {
    awaitWriteFinish: true,
    binaryInterval: 500,
    depth: 9,
    ignoreInitial: false,
    ignorePermissionErrors: false,
    interval: 500,
    persistent: true,
  }

const watcher = chokidar.watch(folderPath, options)

watcher.on('add', (event, path) => {
  const buffer = fs.readFile(filePath, {
        flag: 'r',
      });
  const fileHash = cr2.buf(buffer);
  console.log(fileHash)
});
我注意到的读取操作与目录相关,而不是与文件相关,对于一个拥有5k资源的目录,同样的循环会被激发5k次

乔基达尔:3.5.1 视窗10

为什么会这样?也许我的选择对象错了,或者我错过了什么