Выбор ответа Middle Event loop и libuv спрашивают часто обновлено

Что уходит в пул потоков libuv

Вопрос

Какая операция в Node.js выполняется в пуле потоков libuv?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: crypto.pbkdf2() с колбэком. Асинхронные pbkdf2, scrypt, большинство функций fs, dns.lookup и zlib libuv выполняет в пуле потоков: у них нет неблокирующего системного API. - Сетевые операции (приём соединений, чтение сокета) идут через механизмы ОС (epoll, kqueue,…

Варианты ответа

  1. Приём входящего HTTP-соединения
  2. Чтение из TCP-сокета через socket.on
  3. crypto.pbkdf2() с колбэкомправильный ответ
  4. setTimeout с задержкой

Разбор

Асинхронные pbkdf2, scrypt, большинство функций fs, dns.lookup и zlib libuv выполняет в пуле потоков: у них нет неблокирующего системного API.

  • Сетевые операции (приём соединений, чтение сокета) идут через механизмы ОС (epoll, kqueue, IOCP) прямо в главном потоке цикла.
  • Таймеры хранятся в самом event loop и потоков не требуют.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме