Raku kurss / Funkcionālā, paralēlā, reaktīvā un tīmekļa programmēšana / Paralēlā programmēšana / Kanāli / Kanāla aizvēršana
Viktorīna — Kanāla aizvēršana
Ko izdrukā šī programma?
my $c = Channel.new;
$c.send(1);
$c.send(2);
$c.close;
say $c.list.elems;| 0 | 0 |
| 0 | 1 |
| 1 | 2 |
| 0 | tā gaida mūžīgi |
.list savāc katru kanālā vēl esošo vērtību un beidzas,
jo kanāls ir aizvērts. Tika nosūtītas divas vērtības, tāpēc
.elems ir 2. Bez .close metode
.list gaidītu mūžīgi.