Курс по Raku / Функционално, паралелно, реактивно и уеб програмиране / Паралелно програмиране / Обещания / Exercises / Изчакайте няколко
Решение: Изчакайте няколко
Ето едно възможно решение на задачата.
Код
my @words = <apple pear plum>;
my @jobs = @words.map(-> $w { start { $w.uc } });
say await @jobs;🦋 Намерете програмата във файла await-many.raku.
Изход
(APPLE PEAR PLUM)Коментари
@words.map(-> $w { start { $w.uc } })превръща всяка дума в собствено обещание, така че и трите се преобразуват в главни букви паралелно. Острият блок именува думата$w, така че всяко обещание улавя точно своята.await @jobsизчаква целия списък и връща резултатите в първоначалния им ред, което дава(APPLE PEAR PLUM).