Eu tenho as seguintes tarefas que estão sendo executadas por Gulp.
script-a
script-b
script-c
script-a
não está relacionado (relativamente falando) às tarefas b
e c
e leva cerca de 5 segundos para ser executado.
script-b
e script-c
estão relacionados, portanto, precisam ser executados em série e levam cerca de um segundo para serem executados.
Portanto, eu quero ser capaz de executar a
em paralelo com b
e c
- mantendo os dois últimos em série.
No momento, estou usando runSequence para executá-los todos em série;
gulp.task("script", function(callback) {
return runSequence(
"script-a",
"script-b",
"script-c",
callback
)
});
eu posso conseguir script-a
correr em paralelo com 1 das outras tarefas assim;
gulp.task("script", function(callback) {
return runSequence(
["script-a", "script-b"],
"script-c",
callback
)
});
Mas isso parece estar apenas resolvendo o problema pela metade. Parece que a resposta deve ser óbvia?
Respostas:
0 para resposta № 1Você pode tentar agrupar script-b e script-c em outra tarefa e, em seguida, executar em paralelo na tarefa script
. Algo assim:
// 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
)
});