Возможно, имелась в виду реализация функции run, которая позволяет имитировать поведение функций, использующих async. 3 Функция run может возвращать Promise и разрешать его только тогда, когда генератор закончил своё выполнение. 3
Асинхронные задачи в JavaScript обычно выполняются с помощью методов, таких как setTimeout или setInterval. 2 setTimeout позволяет вызвать функцию один раз через определённый промежуток времени, а setInterval — постоянно через указанный интервал. 2