Lewati ke konten

Perulangan

Empat kotak. Semuanya memancarkan badannya melalui keluaran tersendiri dan menandai berakhirnya pekerjaan lewat port done-nya.

Melakukan iterasi pada sebuah daftar.

Masukanitems (json)
Keluaraneach — satu pancaran per elemen
Konfigurasiparallelism: { enabled, count }

Tanpa paralelisme, iterasinya berjalan berurutan. Dengan paralelisme, iterasinya berjalan hingga count buah sekaligus (minimum 2).

Port done baru memancar setelah semua sub-graf iterasinya selesai: di sanalah Anda menyambungkan rangkuman atau pembersihannya.

Permintaan HTTP ──response[body.ids]──► ForEach (paralelisme 4)
├─ each ──► Permintaan HTTP “detail”
└─ done ──► Log “selesai”

Perulangan numerik.

Masukanfrom, to, step (angka)
Keluaraneach — dinamai index
Konfigurasifrom, to, operator (< secara bawaan, atau , =, , >, ), step (0 diperlakukan sebagai 1), parallelism

Perulangan dengan uji di awal.

Masukanleft, right
Keluaranthen — dinamai badan, berupa sinyal murni
Konfigurasioperator, left, right

Badannya berupa sinyal: ia tidak mengangkut nilai. Sambungkan kembali ujung badannya ke port in kotak While untuk mengevaluasi ulang kondisinya.

Gunakan sebuah variabel run sebagai pencacah atau sebagai kondisi berhentinya.

Sama dengan yang sebelumnya, tetapi badannya dijalankan setidaknya satu kali: ujinya berlangsung setelahnya. Keluarannya dinamai loop.

SituasiKotak
Saya punya sebuah daftarForEach
Saya tahu jumlah iterasinyaFor
Kondisi berhentinya bergantung pada sebuah hasil, diuji lebih duluWhile
Sama, tetapi harus ada setidaknya satu putaranDo…While
Saya ingin mencoba lagi jika gagalRetry

Paralelisme ForEach dan For mengirimkan panggilan jaringan sungguhan secara paralel. Pada lingkungan staging, naikkan secara bertahap — dan pertimbangkan kotak Tunggu untuk melandaikan iramanya.