Μετάβαση στο περιεχόμενο

Βρόχοι

Τέσσερα κουτιά. Όλα εκπέμπουν το σώμα τους σε μια ειδική έξοδο και σηματοδοτούν το τέλος της εργασίας μέσω της θύρας τους done.

Επαναλαμβάνεται πάνω σε μια λίστα.

Είσοδοιitems (json)
Έξοδοιeach — μία εκπομπή ανά στοιχείο
Διαμόρφωσηparallelism: { enabled, count }

Χωρίς παραλληλισμό, οι επαναλήψεις διαδέχονται η μία την άλλη σειριακά. Με αυτόν, εκτελούνται έως και count ταυτόχρονα (ελάχιστο 2).

Η θύρα done εκπέμπει μόνο αφού τελειώσουν όλα τα υπογραφήματα επανάληψης: εκεί συνδέουμε τη σύνοψη ή τον καθαρισμό.

Αίτημα HTTP ──response[body.ids]──► ForEach (παραλληλισμός 4)
├─ each ──► Αίτημα HTTP «λεπτομέρεια»
└─ done ──► Log «ολοκληρώθηκε»

Αριθμητικός βρόχος.

Είσοδοιfrom, to, step (αριθμοί)
Έξοδοιeach — με όνομα index
Διαμόρφωσηfrom, to, operator (< εξ ορισμού, ή , =, , >, ), step (το 0 αντιμετωπίζεται ως 1), parallelism

Βρόχος με προηγούμενο έλεγχο.

Είσοδοιleft, right
Έξοδοιthen — με όνομα σώμα, καθαρό σήμα
Διαμόρφωσηoperator, left, right

Το σώμα είναι σήμα: δεν μεταφέρει τιμή. Ανακυκλώστε το τέλος του σώματος στη θύρα in του κουτιού While για να επαναξιολογηθεί η συνθήκη.

Χρησιμοποιήστε μια μεταβλητή εκτέλεσης ως μετρητή ή ως συνθήκη τερματισμού.

Ίδιο με το προηγούμενο, αλλά το σώμα εκτελείται τουλάχιστον μία φορά: ο έλεγχος γίνεται μετά. Η έξοδος ονομάζεται βρόχος.

ΚατάστασηΚουτί
Έχω μια λίσταForEach
Γνωρίζω τον αριθμό των επαναλήψεωνFor
Η συνθήκη τερματισμού εξαρτάται από ένα αποτέλεσμα, ελέγχεται πρινWhile
Το ίδιο, αλλά χρειάζεται τουλάχιστον ένας γύροςDo…While
Θέλω να ξαναπροσπαθήσω σε περίπτωση αποτυχίαςRetry

Ο παραλληλισμός των ForEach και For στέλνει πραγματικές κλήσεις δικτύου παράλληλα. Σε ένα περιβάλλον δοκιμών, ανεβάστε τον σταδιακά — και σκεφτείτε το κουτί Αναμονή για να εξομαλύνετε τον ρυθμό.