Урок 4. JavaScript. Асинхронность.Что такое Event Loop. JS SetTimeout 0

Поділитися
Вставка
  • Опубліковано 18 лис 2024

КОМЕНТАРІ • 420

  • @VladilenMinin
    @VladilenMinin  5 років тому +362

    Асинхронность! Понятней с этим? Двигаемся дальше?
    Эксклюзивный контент на моем Boosty: boosty.to/vladilen

    • @ШамильАлисултанов-т6э
      @ШамильАлисултанов-т6э 5 років тому +1

      Круто, дальше наверное можно разбирать Промисы :-) и его методы

    • @VladilenMinin
      @VladilenMinin  5 років тому +6

      @@ШамильАлисултанов-т6э Промисы сегодня или завтра, да

    • @_Black_Mirror_
      @_Black_Mirror_ 5 років тому +18

      лучшее объяснение что я видел

    • @-it-kidys
      @-it-kidys 5 років тому +6

      @@VladilenMinin про промисы да и про async/await тоже логически последовательно супер было бы с такой подачей просто шикарно!

    • @VladilenMinin
      @VladilenMinin  5 років тому +2

      @@-it-kidys Благодарю

  • @justfisher2920
    @justfisher2920 Рік тому +102

    Впринципе тема раскрыта для новичка, но мне хотелось бы кратко дополнить. Так называемая очередь задач на самом деле разделена на две очереди, первая - это макротаски, вторая - микротаски, и в первую очередь выполняются сначало микротаски, а потом макротаски. К макротаскам относятся как сказал Владилен, setTimeout'ы, setInterbal'ы, обработчики событий, загрузка картинок, вывод инпутов и.т.д., а к микротаскам относятся только промисы, и впервую очередь стек будет выполнять их. Не благодарите😎

    • @grib-pix
      @grib-pix Рік тому

      а для синхронного кода какая очередь?

    • @justfisher2920
      @justfisher2920 Рік тому +4

      @@grib-pix ты только что ответил сам на свой вопрос!

    • @trreyi
      @trreyi 10 місяців тому

      ​@@justfisher2920можно ли ваш юзер в ТГ поговорить на счёт js

    • @relaxandwatch4091
      @relaxandwatch4091 8 місяців тому +15

      Ну, ты тоже не до конца написал, следует бы упоминуть, что сначало выполняются все микротаски(промисы,колбэки из queue microtasks(), колбэки MutationObserver, а потом только одна макротаска(если она пораждает микротаски, то эти микротаски выполняются сразу же после это макротаски), т.е получим: все микротаски, 1 макротаска, все микротаски, 1 макротаска и т.д.

    • @СергейК-б6н
      @СергейК-б6н 8 місяців тому

      Синхронный по очереди вот как код идет с первой строки до последней.А если внутри асинхронный будет то будет как в видео вот указанно асинхронный код дождеться пока выполнеться весь синхронный.@@grib-pix

  • @dmytrohelbak
    @dmytrohelbak 5 років тому +254

    так просто аж страшно))) Вы гениально просто всё объяснили. Спасибо, Владилен!

  • @pavloskuibida6292
    @pavloskuibida6292 3 роки тому +2

    на курсах показывали на картинка, ничего не понял, Владилен за 17 мин донес все! В очередной раз поклон!

  • @valentinknoll4106
    @valentinknoll4106 5 років тому +122

    Спасибо, у вас талант хорошего учителя

  • @alexandrvinogradov8346
    @alexandrvinogradov8346 Рік тому +6

    Ох, впервые за три года понятное мне объяснение Event Loop, спасибо! :)

    • @MadRedMarx
      @MadRedMarx Рік тому

      На самом деле нет. Event loop может быть реализован двумя основными способами: 1) на каждый поток и 2) с пулом потоков. Объяснение так себе. Event loop'ы не специфичны для JS. Любой асинхронный код основан на эвент лупах, в любых языках.

  • @АртурМетельский-ч8н

    Сколько статей не читал не мог полностью понять как работает event loop. После этого видео все стало предельно ясно. Спасибо за это :)

  • @vladpobidash
    @vladpobidash 4 роки тому +9

    Это лучшее объяснение что я находил за все время изучения асинхронности в js. Спасибо большое что делишься так доступно и наглядно знаниями!

  • @alex_k21
    @alex_k21 4 роки тому +45

    хотелось бы, конечно, еще услышать что-нибудь про приоритетность микро и макротасков) но для начинающих, думаю, и этого достаточно

  • @ninzzo9867
    @ninzzo9867 2 роки тому

    самый четкий лектор) Показать с примером на этом сайте это очень круто!

  • @elmirdadashev608
    @elmirdadashev608 Місяць тому

    Лучшее объяснение которое я когда-либо слышал

  • @alexdexx21
    @alexdexx21 6 місяців тому

    Визуализация -- моё почтение. Спасибо, стало сильно понятнее!

  • @bullet3898
    @bullet3898 3 роки тому +25

    обожаю момент, когда "И на самом деле..это всё")))

  • @maxshmidt557
    @maxshmidt557 5 років тому +67

    Жду продолжения (promise, async await, fetch ). До сих пор не знаю где именно надо писать async await. Тема не простая особенно что касается promise.
    P.S.: Благодарю за видеоролик по асинхронности.

    • @VladilenMinin
      @VladilenMinin  5 років тому +24

      тема проще, чем кажется
      В следующем видео расскажу

  • @ruslwhite
    @ruslwhite 3 роки тому +20

    Было бы здорово ещё описать что относится к таскам, а что к микротаскам и их очередь выполнения

  • @alexon3272
    @alexon3272 4 роки тому +3

    Лучшее видео и урок, показывающий всю суть принципа работы языка javaScript! Автору БОЛЬШОЕ СПАСИБО!

  • @alexmajak3159
    @alexmajak3159 3 роки тому +2

    Спасибо за труд. Многие вещи максимально понятно.

  • @drl232
    @drl232 3 роки тому

    Владилен респект вам за просвещения в JavaScript !

  • @romanshevchenko9237
    @romanshevchenko9237 Рік тому

    Лучшее видео по теме из всего, что я смотрел

  • @vallery1395
    @vallery1395 2 роки тому

    С удовольствием смотрю все Ваши видео! Подписка + лайк! Спасибо!

  • @StetskoV
    @StetskoV 3 роки тому +12

    Владилен, спасибо за труд! Все очень доходчиво!

  • @kerdi_it4863
    @kerdi_it4863 2 роки тому +3

    \\\Красавчик братан. обьясняешь как надо. преподавать это твоя стихия

  • @romanhassazhyrov5558
    @romanhassazhyrov5558 Рік тому

    Лучшее объяснение, понял с первого раза!

  • @Dendor3519
    @Dendor3519 3 роки тому

    Владилен!!! Всё классно рассказываешь!

  • @seoonlyRU
    @seoonlyRU 2 роки тому +1

    Будем знать, за это однозначно лайк от СЕООНЛИ

  • @GUNTRUP_
    @GUNTRUP_ Рік тому

    ранее понимание асинхронности было ,но твое видео мне дало ясность

  • @bodya5645-e5l
    @bodya5645-e5l 4 роки тому

    Самые лучшие уроки на ютубе.

  • @TheSerikzhan
    @TheSerikzhan 3 роки тому +1

    Очень доступное объяснение! Спасибо автору!

  • @danilsilantyev9623
    @danilsilantyev9623 2 роки тому +7

    Огромное спасибо, Владилен! Как же ты суперски помогаешь развиваться, т.к. в ру-сообществе мало действительно крутых курсов и уроков (даже платных), после твоего курса на Udemy и всех видео по JS'у могу действительно создавать крутые веб-приложения, которые радуют даже себя! Спасибо за то, что помог учиться в кайф!)

  • @maxim_hj
    @maxim_hj 2 роки тому

    Знаете, что я Вам скажу? Вы самый настоящий скрипт!

  • @sergeiskipin6733
    @sergeiskipin6733 4 роки тому +3

    в мозгу стало как то чище и просторней ), спасибо!

  • @yanarusakova1632
    @yanarusakova1632 2 роки тому

    Максимально доступно и очень быстро Вам удалось объяснить!!!🔥🔥

  • @ПётрПетровичПетров-ь1х

    Влад, ну ты вообще красавчик !
    Очень круто подаешь материал , спасибо за труды, очень качественный контент !
    Успехов тебе профессор Владилен Минин !

  • @RomanKalugin
    @RomanKalugin 4 роки тому

    Так не хватало серии таких видосов!

  • @realmadrid-ji9bd
    @realmadrid-ji9bd 3 роки тому

    Более подробного объяснение я нигде не видел! Спасибо вам большое 👍👍👍

  • @garikmelqonyan6011
    @garikmelqonyan6011 4 роки тому +4

    Respect!
    Thank you for your simplicity. I just can't help saying that you are talented to make things plainly that have seemed hard for so long.
    In the search for good educational material, you come in touch with a variety of different stuff and many of them are explained so complicatedly that you get more and more confused.
    Your tutorials are one of the best concerning the mentioned concepts.
    Thank you.

  • @IvJaiN
    @IvJaiN 3 роки тому +1

    тему уяснил на 10 баллов, спасибо за лучшее объяснение!

  • @ОлегПетров-п4у
    @ОлегПетров-п4у 3 роки тому

    Кратко, наглядно, понятно. Спасибо! Event Loop.

  • @exploringtheworld8780
    @exploringtheworld8780 3 роки тому +1

    Спасибо, Владилен!

  • @vasiloconnell281
    @vasiloconnell281 4 роки тому

    наконец-то разобрался с этим event loop

  • @Skif769
    @Skif769 4 роки тому

    Ты ваще краса, 2 мин видео а уже столько нового узнал!

  • @nan-simon
    @nan-simon 2 роки тому +2

    Мне нравится ваш восхищенный голос, когда вы рассказываете) Это, очень здорово) 👍

  • @Makdir
    @Makdir 4 роки тому

    Можно было сказать, что асинхронными обычно являются методы с неопределенным временем выполнения. Слушатели событий не знают когда это событие произойдет и произойдет ли вообще. То же самое при чтении файлов и т.п.. Когда они закончаться, если закончаться вообще неизвестно, а программа должна выполнятся (или должна ждать результата :) ). Отсюда можно сделать логический переход к промисам, которые позволяют учитывать возможные варианты завершения или незавершения асинхронных процессов. Мне кажется так лучше для понимания асинхронности (чтобы не сложилось впечатление, что это просто обычный метод, но который происходит позже, как можно подумать вследствие манипуляций таймаутом (что 5000, что 0 - а результат в конце)). За видео - респект и лайк. Круто и наглядно объяснено как выполнение метода выносится из основного потока и включается обратно.

  • @Записи-л7у
    @Записи-л7у Рік тому

    Молодец, умница. В сети полно руководств а-ля "Hello World", но "просто о сложном" очень мало, тем более таких наглядных видео. А даже опытным специалистам полезно такие уроки просматривать. Не все по теории шли к практике, а к JS подходили с опытом других языков, например C++ и практические навыки есть, а теории (концепта) работы в браузерной среде у таких специалистов может и не быть. Спасибо.

  • @СергійМельник-х2ф
    @СергійМельник-х2ф 2 роки тому

    Дуже якісно пояснив. Автору респект.

  • @Roman-fc8qt
    @Roman-fc8qt 3 роки тому

    Весьма поверхностный урок. Для новичков может и пойдет. Но стоило бы еще рассказать про то что лежит в основе асинхронности, а имено про libuv, и почему тяжелые вычеслительные операции не стоит выполнять через event loop

  • @selfcreator8921
    @selfcreator8921 8 місяців тому

    Отлично видео, большое спасибо за твой труд

  • @АндрейСкарынкин
    @АндрейСкарынкин 5 років тому +1

    Лучшие уроки на ютубе! Продолжай пожалуйста)

    • @VladilenMinin
      @VladilenMinin  5 років тому

      Благодарю за такой отзыв)

  • @barb0ssa227
    @barb0ssa227 4 роки тому

    Как просто ты все обьяснил, сказка просто!
    Спасибо друг, ты классный учитель

  • @RewCSharp
    @RewCSharp 11 місяців тому

    Спасибо за урок!

  • @maksymkushchenko7054
    @maksymkushchenko7054 2 роки тому +1

    Отличное разъяснение, благодарю!

  • @AlexandrBaibachenko
    @AlexandrBaibachenko 2 роки тому

    Юху, наконец-то понятно, как это работает. Огромное спасибо за урок👍

  • @mila4308
    @mila4308 3 роки тому

    идеально, гениально и просто! лучший учитель

  • @gravitation-ether242
    @gravitation-ether242 3 роки тому

    Владлен твои уроки уже комментируют целые видео создают анализируют. Ну нигде так четко не смог понять многие элементы js

    • @VladilenMinin
      @VladilenMinin  3 роки тому

      Не совсем понял, что ты имеешь ввиду?

  • @alekseyberezov8020
    @alekseyberezov8020 3 роки тому

    Спасибо бро! Это самое крутое и наглядное объяснение Event Loop.

  • @andrTaylor
    @andrTaylor 4 роки тому +2

    Ещё про render queue не упомянули. Перерисовка страницы важнее по приоритету, поэтому если стэк занят долгой медленной функцией, то после её завершнения event loop (вместо готовой ф-и в callback queue) закинет ф-ю перерисовки интерфейса в стэк и только потом(уже после неё) будет закидывать в стэк обычные готовые ф-и.

  • @АдильжанМухаметов

    Спасибо большое за такие уроки

  • @Ravw-r9s
    @Ravw-r9s 2 роки тому +1

    Знание и умение объснять это разные вещи. У тебя же есть и то, и то. Респект, спасибо!

  • @kateiero5675
    @kateiero5675 Рік тому

    красава, мой препод на курсах не смог так хорошо это объяснить как ты

    • @VladilenMinin
      @VladilenMinin  Рік тому

      го к нам на курс)

    • @kateiero5675
      @kateiero5675 Рік тому

      я на автоматизатора учусь, и уже заплатила за текущий курс( @@VladilenMinin

  • @МаринаГуд-к3г
    @МаринаГуд-к3г 2 роки тому

    Спасибо огромное! Это просто гениально!!! Спасибо за Ваш труд! Желаю роста Вашему каналу!!!

  • @artem_doronin
    @artem_doronin 2 роки тому +1

    Красавчик! Крутое объяснение

  • @bekzatmurat1341
    @bekzatmurat1341 2 роки тому

    Несмотря на то, что мой руский плохой, вы очень легко обяснили. Огромное спасибо вам

  • @Александр-ь5н8у
    @Александр-ь5н8у 5 років тому +8

    Благодарю за урок. Очень наглядно и доступно, JS становится всё проще и проще. :))

  • @tamesshka
    @tamesshka 3 роки тому +1

    Это было очень увлекательно, Владилен! Спасибо большое за материал!

  • @arti_do2427
    @arti_do2427 Рік тому

    Очень доступное объяснение. Спасибо!

  • @ДмитрийПригульнов
    @ДмитрийПригульнов 3 роки тому +1

    Добрый день. Очень доходчивая и наглядная подача. Огромное спасибо за Ваш труд.

  • @anriat2141
    @anriat2141 3 роки тому

    чел ты просто ахуенно объясняешь!!! Без лишней воды, прозрачно и понятно! Респект тебе! Я прям очень Благодарен тебе, что ты есть!!!

  • @Lord__Foxtrot
    @Lord__Foxtrot Рік тому

    Спасибо большое за детальное объяснение !)

  • @rzdegor1978
    @rzdegor1978 4 роки тому

    Хоть теперь мне стало это понятно )) Включая предидущие уроки ))

  • @artursveshnikov7668
    @artursveshnikov7668 Рік тому

    Это видео как по мне лучшее в плейлисте. Js конечно лучше от этого не стал 💩. Но Владилен красавчик 😎😎😎. Так просто объяснять сложные вещи могут не только лишь все.

  • @O-L-1986
    @O-L-1986 5 років тому +1

    Агонь, ты лучший! Очень доступно!

  • @booleanaireme
    @booleanaireme 2 роки тому

    спасибо большо, читала много и не могла понять, с вашей интерпретацией получилось понять!

  • @vadicus6534
    @vadicus6534 4 роки тому +3

    Отличная подача, Владилен! Отдельное спасибо за то что ты подаешь информацию медленно, с повторами и примерами. Это именно то чего мне не хватает в обучающих материалах по js! Отличное видео, я крайне доволен что нашел такой контент!)

  • @bukanaka
    @bukanaka 4 роки тому +2

    В первые слышу про асинхронность, но материал был грамотно подан, что и последовало моему понятию с первого раза. Спасибо, Влад))

  • @АлександрВарыгин-в3ы

    Отличный урок! Доступно и понятно!

  • @АлексейЛоскутников-ю4р

    Очень хороший показательный пример.

  • @ВолодимирПилипчук-ъ4ш

    Я в шоке, ты такой красавчик, по полочкам обяснил )

  • @ideshmaaerdene-ochir4247
    @ideshmaaerdene-ochir4247 4 роки тому

    Thank you very much. Not this one but all you tutorials are very good! Good luck!

  • @ogtater1967
    @ogtater1967 2 роки тому

    Владилен спасибо тебе большое !

  • @Snegurjan
    @Snegurjan 4 роки тому +1

    Урааа ,я все понял ,это было пугающе просто,Владилен учитель от Бога!

  • @antotepo
    @antotepo Рік тому

    Владилен, конечно, крутой

  • @МихаелДядин
    @МихаелДядин 4 роки тому

    Владилен спасибо за асинхроность.круто!!!

  • @Грант1147
    @Грант1147 4 роки тому

    Лучший! Стало понятно как это работает)

  • @СмирновИван-щ9ц

    Всё просто и понятно. Спасибо!

  • @OnlyLuck1000
    @OnlyLuck1000 4 роки тому

    Просто лучший! Кратко, наглядно, понятно. Спасибо за труд!

  • @ИванОпенько-б5с
    @ИванОпенько-б5с 5 років тому +2

    Конструктивно, понятно, однозначно лайк подписка

  • @ПетроПотрошенко
    @ПетроПотрошенко 4 роки тому

    Комментарий из восьми слов для поддержки этого видео.

  • @peterk9449
    @peterk9449 4 роки тому

    Поздравляю с 100 000 подписчиков!!! Так держать!

  • @olya9054
    @olya9054 5 років тому

    Отличное видео, большое спасибо. Все очень понятно, смотреть и слушать приятно. Очень рада, что нашла ваш канал!

  • @robertrebelovskiy3239
    @robertrebelovskiy3239 2 роки тому

    Мне было понятно 🐟 спасибо вам большое (ваш канал советую своим начинающим)

  • @blog_mukhammada
    @blog_mukhammada 4 роки тому

    Видеоуроки топ! Спасибо вам большое!

  • @annasamoylenko3804
    @annasamoylenko3804 5 років тому +4

    Владилен, спасибо! Четко, ясно, понятно) Продолжай творить)

  • @goodvideobro
    @goodvideobro 10 місяців тому

    максимально доходчиво

  • @anogoeva
    @anogoeva 3 роки тому

    Спасибо за такой легкий и понятный формат предоставления информации.

  • @АлексейПетренко-о6ш

    Просто отвал башки, автору - моё почтение!

  • @Roma_-nh7qj
    @Roma_-nh7qj Рік тому

    Какой ты Гигант Владилен.⚡⚡⚡

  • @highend5358
    @highend5358 3 роки тому

    Великолепный урок! Сразу подписка.

  • @LiubovMinakova-d4h
    @LiubovMinakova-d4h 3 роки тому

    Супер, сложная тема простыми словами!

  • @promax866
    @promax866 5 років тому

    С визуализацией понятнее стало, спасибо!

  • @dmitryshkinder1543
    @dmitryshkinder1543 4 роки тому +1

    Такие сложные темы очень просто объясняешь! Спасибо огромное за твой труд