1. gulp-multi-process
Run gulp tasks in separate cpu processes
gulp-multi-process
Package: gulp-multi-process
Created by: juanfran
Last modified: Sat, 18 Jun 2022 17:34:25 GMT
Version: 1.4.0
License: MIT
Downloads: 31,603
Repository: https://github.com/juanfran/gulp-multi-process

Install

npm install gulp-multi-process
yarn add gulp-multi-process

gulp-multi-process

Build Status

Run gulp tasks in separate CPU processes

Install

 npm install gulp-multi-process --save-dev

Usage

Gulp 3

gulpfile.js

 var gulp = require('gulp');
var gulpMultiProcess = require('gulp-multi-process');

gulp.task('task1', function(cb) {
  // example
});

gulp.task('task2', function(cb) {
  // example
});

gulp.task('multi', function(cb) {
  // task1 and task2 will run in different processes
  return gulpMultiProcess(['task1', 'task2'], cb);
});

Gulp 4

gulpfile.js

 const gulp = require('gulp');
const gulpMultiProcess = require('gulp-multi-process');

function task1() {
  // example
});

exports.task1 = task1;

function task2() {
  // example
});

exports.task2 = task2;

// gulp single will run task1 and task2 on a serial way
exports.single = gulp.series(task1, task2)

function multi(done) {
  // task1 and task2 will run in different processes
  return gulpMultiProcess(['task1', 'task2'], done);
}

exports.multi = multi;

Warning

Run task in multiple processes is not always good for performance because spawn a different node processes is slow. It also depends on how long time it takes to require your gulpfile.
Keep in mind that you can pass true as a third parameter to gulpMultiProcess fn in order to get optimal performance. This will launch one process per core, and if there will be more of them than the number of cores on your machine it will put others into queue. When one process will finish its operation, the next one will be on launched.

Dependencies

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code