BenderIsGreat34
@BenderIsGreat34
junior front-end

Гарантии выполнения и отмены отложенных операций?

Изучаю синхронность и асинхронность JS и появились вопросы по поводу работы setTimeout.
Если я всё правильно понял, то при вызове timeout функция точно не отработает раньше, чем мы указали длину задержки.
Но вот вопрос, где можно почитать про гарантии выполнения и отмены таких операций? Например в стэке находится какая-то крупная задача время выполнения которой превышает задержку функции. Когда задача выполнится, то функция с задержкой сразу же выполнится или подождёт пока все остальные синхронные задачи закроются? Так же интересует, есть ли ещё варианты отмены отложенных операций кроме как clearInterval/clearTimeout?
  • Вопрос задан
  • 212 просмотров
Решения вопроса 1
w3bsme
@w3bsme
Интересное хуже
Пригласить эксперта
Ответы на вопрос 2
setTimeout или setInterval выполнится не раньше, чем через указанное время

Допустим, пришло время выполнения функции в setTimeout, но на этот момент выполняется синхронная функция, которая блокирует процесс на 200 мс, значит - обработчик из setTimeout выполнится не раньше, чем через время, через которое он должен начать выполняться + время, которое требуется для заверения выполнения синхронной функции из стека
Ответ написан
ioangrozniy
@ioangrozniy
Promise - великая вещь ES6. При запросах на сервер и таймаутах без них ни куда
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Artezio Нижний Новгород
от 130 000 до 180 000 ₽
XPOWER Одесса
от 3 000 до 5 500 $
Artezio Москва
от 160 000 до 220 000 ₽
26 февр. 2021, в 05:09
3000 руб./за проект
26 февр. 2021, в 04:16
3000 руб./за проект
26 февр. 2021, в 01:40
1000 руб./за проект