BenderIsGreat34
@BenderIsGreat34
junior front-end

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

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

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

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

Войти через центр авторизации
Похожие вопросы