コンテンツにスキップ

ループ

4 つのボックスがあります。いずれも本体を専用の出力から発行し、 作業の終わりを done ポートで知らせます。

リストを反復します。

入力items(json)
出力each — 要素ごとに 1 回発行
設定parallelism{ enabled, count }

並列化しない場合、反復は順番に実行されます。 並列化すると、同時に最大 count 件(最小は 2)が実行されます。

done ポートが発行されるのは、反復のサブグラフがすべて終わったあとだけです。 まとめ処理や後片付けはここに接続します。

HTTP リクエスト ──response[body.ids]──► ForEach(並列 4)
├─ each ──► HTTP リクエスト「詳細」
└─ done ──► Log「完了」

数値のループです。

入力fromtostep(数値)
出力eachindex という名前
設定fromtooperator(既定は <。ほかに =>)、step(0 は 1 として扱われます)、parallelism

条件を先に判定するループです。

入力leftright
出力then本体 という名前。純粋なシグナル
設定operatorleftright

本体はシグナルであり、値は運びません。 条件を再評価させるには、本体の末尾を While ボックスの in ポートに戻してください。

カウンターや終了条件には 実行変数を使います。

前のボックスと同じですが、本体が少なくとも 1 回実行されます。 判定はそのあとに行われます。出力の名前は ループ です。

状況ボックス
リストがあるForEach
反復回数が分かっているFor
終了条件が結果に依存し、判定を先に行うWhile
同じだが、少なくとも 1 周は必要Do…While
失敗したときにやり直したいRetry

ForEachFor の並列化は、本物のネットワーク呼び出しを並列に送り出します。 検証環境で使うときは段階的に上げてください。 呼び出しの間隔を平らにするために 待機のボックスを挟むことも検討してください。