Tovább a tartalomhoz

Ciklusok

Négy blokk. Mindegyik külön kimeneten bocsátja ki a törzsét, és a munka végét a done portján jelzi.

Egy lista elemein iterál.

Bemenetekitems (json)
Kimenetekeach — elemenként egy kibocsátás
Konfigurációparallelism: { enabled, count }

Párhuzamosítás nélkül az iterációk sorosan követik egymást. Párhuzamosítással egyszerre legfeljebb count darab fut (legalább 2).

A done port csak akkor bocsát ki, amikor minden iterációs részgráf befejeződött: ide érdemes bekötni az összegzést vagy a takarítást.

HTTP-kérés ──response[body.ids]──► ForEach (párhuzamosság 4)
├─ each ──► HTTP-kérés „részletek”
└─ done ──► Log „kész”

Numerikus ciklus.

Bemenetekfrom, to, step (számok)
Kimenetekeachindex néven
Konfigurációfrom, to, operator (alapértelmezés szerint <, illetve , =, , >, ), step (a 0 értéket 1-nek tekinti), parallelism

Elöltesztelő ciklus.

Bemenetekleft, right
Kimenetekthentörzs néven, tiszta jelzés
Konfigurációoperator, left, right

A törzs jelzés: nem hordoz értéket. A feltétel újraértékeléséhez a törzs végét vissza kell kötni a While blokk in portjára.

Számlálóként vagy leállási feltételként futásváltozó használható.

Az előzővel azonos, de a törzs legalább egyszer lefut: a vizsgálat utána történik. A kimenet neve ciklus.

HelyzetBlokk
Van egy listaForEach
Ismert az iterációk számaFor
A leállási feltétel egy eredménytől függ, és előbb kell vizsgálniWhile
Ugyanez, de legalább egy kör kellDo…While
Hiba esetén újra kell próbálniRetry

A ForEach és a For párhuzamosítása valódi hálózati hívásokat indít egyszerre. Tesztkörnyezetben érdemes fokozatosan növelni — és a Várakozás blokk is segít elsimítani a ritmust.