Gulp:限制文件处理并发性; 避免同时处理*所有文件*
我有一个大的图像列表(2874),需要用gulp-imagemin
进行优化,但是操作系统显然限制了打开文件的数量。 我可以用ulimit
来改变它,但是考虑到文件数量,它并不感觉特别便携,也不安全。
这是我现在的代码:
function optimizeImages() { return gulp.src('images/*') .pipe(imagemin()) .pipe(gulp.dest(dest)); }
有没有办法一次运行一个文件的子集的插件? 喜欢这个
function exampleTask() { return gulp.src('images/*') .pipe(limitConcurrency(imagemin(), 50)) .pipe(gulp.dest(dest)); }
事实certificate, Gulp已更新,以解决错误Error: EMFILE, too many open files
最近Error: EMFILE, too many open files
但我还没有更新。 现在并发问题自动解决!
我只是在我的项目文件夹中运行这个:
npm update gulp