@yankoyski

Что такое асинхронные и синхронные функции?

Что такое асинхронные и синхронные функции?
  • Вопрос задан
  • 4004 просмотра
Решения вопроса 1
dasha_programmist
@dasha_programmist
ex Software Engineer at Reddit TS/React/GraphQL/Go
рассмотрим на примере кипячения чайника со свистком - тебе нужно скипятить воды, ты налил чайник, и поставил его греться.
1) синхронно ты стоишь ждешь пока он скипит и не приступаешь к другим делам
2) асинхронно ты ушел в комнату гладить рубашку, погладил, вернулся на кухню и независимо от того скипел чайник или нет, ты его снял с плиты и налил воду
3) в режиме прерывания ты ушел в комнату гладить рубашку, чайник просвистел, ты прервался, пошел снять его с плиты

в js так же,
1) пока выполняется один синхронный метод движок не переходит к выполнению второго
2,3) движок запускает асинхронную функцию и не дожидаясь получения результата переходит к выполнению следующего метода, когда асинхронная функция закончит свое выполнение она уведомит движок и он по возможности прервется для получения и обработки результата
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Синхронные - работают друг за другом. (аналогия: однополосная автодорога)
Асинхронные - параллельно. (аналогия: многополосная автодорога)
Ответ написан
@lloydbanks
Асинхронный код - это код. который выполнится когда-то в будущем, напр, setTimeout или ajax.
Синхронный же выполняется последовательно, вторая операция не будет выполнена, пока исполняется первая.
Если хотите разобраться как оно работает, гуглите в сторону Стек вызовов и очередь событий
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы