Corso di Raku / Programmazione funzionale, concorrente, reattiva e web / Programmazione concorrente / Channel / Exercises

Sommate un channel

Problema

Crea un channel e pilotalo con due promise. In un blocco start — il produttore — invia i numeri 1..6 nel channel e poi chiudilo. In un secondo blocco start — il consumatore — raccogli ogni valore con .list e restituiscine la somma. Attendi entrambe le promise insieme e stampa la somma prodotta dal consumatore. Questa è la forma naturale di un channel: un produttore su un thread, un consumatore su un altro, coordinati da un terzo.

Esempio

Il programma stampa:

21

Soluzione

Vedi la soluzione

Soluzione: Ricevete un valore   |   Soluzione: Sommate un channel