[Перевод] Способы разделения длительных задач в JavaScript

Иногда возникает необходимость разделить длительную дорогую (с точки зрения вычислений) задачу на несколько тиков (ticks) цикла событий (event loop). Существует множество способов это сделать. Рассмотрим их. Легко "уничтожить" пользовательский опыт, позволив длительной дорогой задаче захватить основной поток (main thread). Неважно, насколько сложным является приложение, цикл событий может выполнять только одну задачу за раз. Пока выполняется одна задача, другие ждут своей очереди. Как правило, задача выполняется настолько быстро, что пользователь ничего не замечает. Но так бывает не всегда.

https://habr.com/ru/companies/timeweb/articles/882418/

#timeweb_статьи_перевод #javascript #long_task #settimeout #promise #scheduler #requestidlecallback #requestanimationframe #длительная_задача #промис #планировщик #main_thread #call_stack #основной_поток #стек_вызовов

Способы разделения длительных задач в JavaScript

Иногда возникает необходимость разделить длительную дорогую (с точки зрения вычислений) задачу на несколько тиков (ticks) цикла событий (event loop). Существует множество способов это сделать....

Хабр