0

我有以下由 Gulp 运行的任务。

  1. script-a
  2. script-b
  3. script-c

script-ab与任务和无关(相对而言)c,运行大约需要 5 秒。

script-b并且script-c是相关的,所以必须连续运行,每个运行大约需要一秒钟。

因此,我希望能够与和-a并行运行,同时保持后两者串行。bc

我目前正在使用 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
  )
});

但这似乎只解决了问题的一半。似乎答案应该很明显?

4

1 回答 1

0

您可以尝试将 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
  )
});
于 2017-03-07T17:25:52.340 回答