gulp 4.0から新しく加わったseriesとparallelについての備忘録

gulp4.0から新しくseriesとparallelが追加され、タスクの処理の順番を制御することができるようになりました。最初はどういう事かよく分からなかったので、自分用の備忘録としてメモしておきます。
今までのgulpの処理
gulpというのは行う処理を「タスク」という単位で用意して、そのタスクを並列で処理していく事で、処理のスピードを上げていました。
しかし、並列でタスクを処理していくという事はスピードが早くなる反面、処理の順番が選べないという事でもあります。
例えば、「style.scssをstyle.cssにコンパイルする」というタスクと「style.cssを圧縮してstyle.min.cssを作成する」というタスクを並列で処理してしまうと、まだSassをコンパイルしていないのに、先にstyle.cssを圧縮してしまう恐れがあります。
このように、必ずこの順番で処理してほしい場合も出てきます。
それを回避するために、直列処理をするプラグインもありましたが、4系からは並列処理と直列処理を選択するためのseriesとparallelが追加されました。
seriesとparallel
seriesが直列処理で、parallelが並列処理です。
直列処理はタスクを1つずつ順番に処理していくので、順番を明確にしたい時に使用します。逆にparallelは並列処理で、タスクを同時に処理していきます。
それぞれの書き方は下記の通りになります。
gulp.series(タスク名, タスク名); // 直列処理
gulp.parallel(タスク名, タスク名); // 並列処理実際に組み込むと下記のようになります。
gulp.task('default', gulp.series(
gulp.parallel(タスク1, タスク2)
));こうすると、タスク1が終わった後にタスク2が実行されるようになるわけですね(setTimeoutのような遅延処理があったとしても)。

WordPressのヘッダーにツールバーが表示されないときは、wp_headやwp_footerが入っているか確認
gulpのwatch機能を使って、監視ファイルに変更があった時にタスクを実行する
Nuxt.jsの「layouts」を使用してレイアウトの共通化を行う方法|Nuxt.jsの基本
SourceTreeでマージ時に「fatal: You have not concluded your merge (MERGE_HEAD exists).」と表示される場合の対処法
iTerm2を使いこなすために覚えておきたいショートカット集
JetpackでのError during WebSocket handshakeの解決方法
手軽にコーディングの勉強ができるCodePenをもっと便利に使うための設定
Vue CLIでの画像パスの指定方法・配置場所まとめ
Vue CLIで共通のSCSSファイルを読み込む方法
コードスニペットの管理方法や命名規則について
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
Googleカレンダーを便利に活用するための小技集(祝日だけを表示・月末の繰り返しイベントを追加)
Obsidianを使った「自己流PKM」で行う知識トレーニング
テキストエディタ・ノートアプリ関連のショートカットキーをKeyboard Maestroで統一する
Path Finderを使ってキーボードだけでファイル操作する方法(応用編)
macOSのコマンドパレット比較!SpotlightとAlfred、Raycastどれを使えばいい?
1つのノートアプリにすべて集約するのをやめた理由|2025年時点のノートアプリの使い分け
Notionログイン時の「マジックリンク」「ログインコード」をやめて普通のパスワードを使う
AlfredでNotion内の検索ができるようになるワークフロー「Notion Search」
Gitで1行しか変更していないはずのに全行変更した判定になってしまう