Порядок задач Gulp - последовательный и параллельный
У меня есть следующие задачи, которые выполняет Gulp.
script-a
script-b
script-c
script-a
не имеет отношения (условно говоря) к задачам b
а также c
и занимает около 5 секунд, чтобы бежать.
script-b
а также script-c
связаны между собой, поэтому должны быть запущены последовательно, и каждый занимает около секунды для запуска.
Поэтому я хочу иметь возможность бежать a
параллельно с b
а также c
- сохраняя последние два в серийном.
В настоящее время я использую runSequence, чтобы запустить их все последовательно;
gulp.task('script', function(callback) {
return runSequence(
'script-a',
'script-b',
'script-c',
callback
)
});
я могу получить script-a
запускаться параллельно с одной из других задач, подобных этой;
gulp.task('script', function(callback) {
return runSequence(
['script-a', 'script-b'],
'script-c',
callback
)
});
Но это, кажется, только половина решения проблемы. Похоже, ответ должен быть очевидным?
1 ответ
Вы можете попробовать сгруппировать script-b и script-c в другую задачу, а затем запустить ее параллельно. script
, Что-то вроде этого:
// script-b and script-c run in serial
gulp.task('scriptsBC', function(callback){
return runSequence(
'script-b',
'script-c',
callback
)
})
// script-a and scriptBC run in paralell
gulp.task('script', function(callback) {
return runSequence(
['script-a','scriptsBC'],
callback
)
});