• Асинхронные функции 101
    0
    Вызов функции pause500ms инициирует setTimeout и возвращает promice в состоянии pending(в состоянии когда результата ещё нет). Директива await дожидается когда promice будет в состоянии resolve(или reject).
    И в итоге, в первом случае мы инициируем первый таймаут и дожидаемся когда он разрешится. После чего инициируем второй и в 5 строчке снова ждём. Во втором случае мы инициируем первый таймаут, инициируем второй таймаут и ждём пока второй разрешится, т.е. оба промайса разрешаются одновременно. Что важно, они не выполняют код одновременно(у нас однопоточная модель), они оба ждут какого-то внешнего события.
  • Асинхронные функции 101
    0
    Проверил ещё раз. Исправленный мной код работает нормально. У нас разные консоли?
  • Асинхронные функции 101
    +3
    Тут ошибка(и в оригинальной статье, кстати, тоже).
    Функция inParallel выполняется последовательно(за 1 секунду). Чтобы она выполнилась параллельно нужно убрать await перед вызовом функций:
    async function inParallel() {
        const await1 = pause500ms();
        const await2 = pause500ms();
        await await1;
        await await2;
        console.log("I will be logged after 500ms");
    }
    
  • Телепатия на стероидах в js/node.js
    +1
    Для устаревших. Специфика проекта предполагает возможность работы на устаревших браузерах, в т.ч. мобильных(медленно, глючно, но если человек хочет — нам не жалко). И это не говоря о том что socket.io одна из самых популярных библиотек по работе с WebSocket, даже если понижения канала не происходит.
  • Телепатия на стероидах в js/node.js
    0
    socket.io используется нами как основной канал для api сервера, т.к. мы пишем RIA Отсюда и выбор.
    При желании можно спокойно переписать на динамику.
  • Телепатия на стероидах в js/node.js
    +1
    Лампочка в админке. Только без дежурных программистов, поднятых по тревоге.

    Вся система в целом не направлена на высокие нагрузки, однако это хорошая идея, при большом потоке ошибок складывать их в пачки или сверять с последними отправленными и не слать дубли.
  • Телепатия на стероидах в js/node.js
    +1
    В нашем случае это часть ядра, что даёт больше возможностей для сбора отладочной информации.