Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 制作图像的缩略图,错误生成EAGAIN_Javascript_Node.js_Imagemagick - Fatal编程技术网

Javascript 制作图像的缩略图,错误生成EAGAIN

Javascript 制作图像的缩略图,错误生成EAGAIN,javascript,node.js,imagemagick,Javascript,Node.js,Imagemagick,我需要在大约1000个目录的图像缩略图。我在用图书馆的imagemagick async.each(files, function(file, cb) { if (fs.existsSync(process.env.UPLOAD_BASE_PATH + file + '/P.png')) { im.resize({ srcPath: process.env.UPLOAD_BASE_PATH + file + '/P.png',

我需要在大约1000个目录的图像缩略图。我在用图书馆的imagemagick

async.each(files, function(file, cb) {

      if (fs.existsSync(process.env.UPLOAD_BASE_PATH + file + '/P.png')) {
        im.resize({
          srcPath: process.env.UPLOAD_BASE_PATH + file + '/P.png',
          dstPath: process.env.UPLOAD_BASE_PATH + file + '/thumb.png',
          width: 225
        }, function (err, stdout, stderr) {
          setTimeout(function () {
            console.log('File rezied: ' + process.env.UPLOAD_BASE_PATH + file + '/thumb.png');

            cb(); //Done resizing image
          }, 100)

        });
      } else {
        cb();
      }

    }, function(err){
      if (err){
        console.log(err);
        res.send(400);
      }
        res.send(200); //All files resized
    });

它可以工作,但在我得到几百张图像后:
错误:spawn EAGAIN
。这与运行的进程数有关。我能做些什么吗?最好是在我的节点代码中。

是否尝试增加超时值?可能是imagemagick需要比您给出的长一点的时间来调整这些。我还想知道,如果不是异步进行,会发生什么情况。下面是另一个线程,其中可能包含有用的信息: