home.social

#eventloop — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #eventloop, aggregated by home.social.

  1. Bonjour 🙂

    Voici un petit comparatif de la programmation d'un bouton qui fait alterner un texte.

    ▶️ Événementiel (JavaScript/DOM, Gtk, Qt...)
    ------------
    label := 'state 1'
    on click:
    label := (if label = 'state2' then 'state1' else 'state2')

    ▶️ Mode immédiat (ImGui, G'MIC...)
    --------------
    setup:
    label := 'state1'
    draw:
    if click:
    label := (if label = 'state2' then 'state1' else 'state2')

    ▶️ FuncSug
    --------
    while true:
    label := 'state1'
    await click
    label := 'state2'
    await click

    #programmingLanguage #eventLoop #GUI

  2. Event Loop для начинающих. Не так страшно, как вам рассказывали

    JavaScript выполняет код в одном основном потоке. Это означает, что инструкции выполняются последовательно — одна за другой. Получил команду — выполнил. Но что делать интерпретатору, если он встречает код, который не может выполнить сразу? Например, обработчик события. Пока событие, допустим, клик на кнопку, не произошло, код внутри обработчика не выполнится. Такой код называют асинхронным. К асинхронным операциям относятся, например, таймеры ( setTimeout ), сетевые запросы или события интерфейса. Промисы ( Promise ) используются для обработки результатов таких операций. В такой ситуации на помощь интерпретатору JS приходит среда, в которой выполняется скрипт. Это может быть Node.js, мобильные среды или интерфейс, который предоставляет браузер — Web API (есть и другие). В отличие от JavaScript-движка, среда выполнения может использовать несколько потоков для обработки ввода-вывода, таймеров и сетевых операций. Если сравнить выполнение скрипта с выступлением оркестра, то дирижёром, который отвечает, чтобы каждая функция «отыграла свою партию» в нужный момент, можно назвать Event Loop. Event Loop — это механизм среды выполнения, который управляет порядком выполнения задач. Он координирует работу JavaScript-кода, обработку событий и другие процессы браузера. Вопреки расхожему мнению, работа этого механизма не так сложна, как его часто описывают. В этой статье, проповедуя Фреймановскую истину — «Если не можешь объяснить что-то простыми словами, то ты не понимаешь этого» — автор попытается (для себя и для других) описать работу Event Loop в браузере. В среде Node.js концепция похожа, но вместо Web API используются другие механизмы ввода-вывода.

    habr.com/ru/articles/1011258/

    #eventloop #webapi #новичкам

  3. Событийный цикл в asyncio: как Python-код работает поверх механизмов Linux

    Большая статья для тех, кто, как и я, споткнулся об asyncio и так не разгадал до конца "магию" событийного цикла. Попробовал распутать этот клубок через подробный рассказ (в как можно более доступной форме) о внутренних механизмах Линукса и самого asyncio, которые лежат в основе событийного. К концу статьи, надеюсь, магия исчезнет, а останется ясное понимание фундамента. Погружаемся

    habr.com/ru/articles/995032/

    #asyncio #python #epoll #selectors #асинхронность #event_loop #eventloop #linux #сокеты

  4. Событийный цикл в asyncio: как Python-код работает поверх механизмов Linux

    Большая статья для тех, кто, как и я, споткнулся об asyncio и так не разгадал до конца "магию" событийного цикла. Попробовал распутать этот клубок через подробный рассказ (в как можно более доступной форме) о внутренних механизмах Линукса и самого asyncio, которые лежат в основе событийного. К концу статьи, надеюсь, магия исчезнет, а останется ясное понимание фундамента. Погружаемся

    habr.com/ru/articles/995032/

    #asyncio #python #epoll #selectors #асинхронность #event_loop #eventloop #linux #сокеты

  5. Событийный цикл в asyncio: как Python-код работает поверх механизмов Linux

    Большая статья для тех, кто, как и я, споткнулся об asyncio и так не разгадал до конца "магию" событийного цикла. Попробовал распутать этот клубок через подробный рассказ (в как можно более доступной форме) о внутренних механизмах Линукса и самого asyncio, которые лежат в основе событийного. К концу статьи, надеюсь, магия исчезнет, а останется ясное понимание фундамента. Погружаемся

    habr.com/ru/articles/995032/

    #asyncio #python #epoll #selectors #асинхронность #event_loop #eventloop #linux #сокеты

  6. 🎉 Behold the groundbreaking revelation: wrapping #io_uring and #kqueue in a warm, fuzzy blanket to make them "user-friendly" for programmers who apparently can't handle raw I/O. 🙄 Gather 'round, fellow developers, for the riveting journey from blocking I/O to... an event loop that looks suspiciously like every other one you've seen. 🤦‍♂️
    tigerbeetle.com/blog/2022-11-2 #userfriendly #programming #eventloop #HackerNews #ngated

  7. Среда выполнения JavaScript простым языком: движок, Event Loop и очереди задач

    Привет, с вами снова я – Дмитрий, React-разработчик, хотелось бы сегодня затронуть тему среды выполнения JS. Многие знают, другие уже подзабыли, а новички — вовсе не в курсе. В общем, эта статья точно найдёт своих читателей. Постараюсь простыми словами и по делу.

    habr.com/ru/companies/gnivc/ar

    #js #javascript #react #начинающим #runtime #ast #среда_выполнения_javascript #среда_выполнения #eventloop #callstack