Raku-Kurs / Funktionale, nebenläufige, reaktive und Web-Programmierung / Nebenläufige Programmierung / Channels / Einen Channel schließen
Quiz — Einen Channel schließen
Was gibt das folgende Programm aus?
my $c = Channel.new;
$c.send(1);
$c.send(2);
$c.close;
say $c.list.elems;| 0 | 0 |
| 0 | 1 |
| 1 | 2 |
| 0 | es wartet ewig |
.list sammelt jeden noch im Kanal liegenden Wert und
endet, weil der Kanal geschlossen ist. Zwei Werte wurden gesendet,
.elems ist also 2. Ohne das
.close würde .list ewig warten.
Kursnavigation
← Einen Channel schließen | Empfangen über das Ende hinaus →