Выбор ответа Middle Event loop и libuv спрашивают часто обновлено
Что уходит в пул потоков libuv
Вопрос
Какая операция в Node.js выполняется в пуле потоков libuv?
Попробуйте сами
Выберите вариант, и откроется разбор.
Показать ответ и разбор
Коротко
Правильный ответ: crypto.pbkdf2() с колбэком. Асинхронные pbkdf2, scrypt, большинство функций fs, dns.lookup и zlib libuv выполняет в пуле потоков: у них нет неблокирующего системного API. - Сетевые операции (приём соединений, чтение сокета) идут через механизмы ОС (epoll, kqueue,…
Варианты ответа
- Приём входящего HTTP-соединения
- Чтение из TCP-сокета через
socket.on crypto.pbkdf2()с колбэкомправильный ответsetTimeoutс задержкой
Разбор
Асинхронные pbkdf2, scrypt, большинство функций fs, dns.lookup и zlib libuv выполняет в пуле потоков: у них нет неблокирующего системного API.
- Сетевые операции (приём соединений, чтение сокета) идут через механизмы ОС (epoll, kqueue, IOCP) прямо в главном потоке цикла.
- Таймеры хранятся в самом event loop и потоков не требуют.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Предыдущий вопрос
Размер пула потоков libuv
Следующий вопрос
p99 вырос в 10 раз, CPU 40%: как ищешь причину
Термины по теме
Ещё по теме «Event loop и libuv»
- Тяжёлый цикл без блокировки event loop
- Код-ревью: что блокирует event loop
- Что блокирует event loop
- Объясни event loop в Node.js
- setImmediate и setTimeout внутри I/O
- setTimeout(0) против setImmediate на верхнем уровне
- Что такое libuv
- Рекурсивный process.nextTick