Corso di Raku / Programmazione funzionale, concorrente, reattiva e web / Programmazione concorrente / Thread / Exercises / Unite e attendete

Soluzione: Unite e attendete

Ecco una possibile soluzione del compito.

Codice

my $t = Thread.start({ say 'first' });
$t.finish;
say 'second';

🦋 Trova il programma nel file join-and-wait.raku.

Output

first
second

Commenti

  1. .finish blocca finché il thread non ha stampato first.

  2. Solo allora il programma principale prosegue e stampa second, quindi l’ordine è garantito. Senza .finish le due righe potrebbero comparire in un ordine qualunque.

Unite e attendete   |   Due thread