Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про JavaScript: blocking, non-blocking, asynchronous

Блокирующие и неблокирующие операции в Node.js

Вопрос проверяет понимание различий между блокирующими и неблокирующими операциями и их влияния на производительность.

Короткий ответ

Блокирующие операции останавливают выполнение кода до завершения операции, что может заморозить приложение. Неблокирующие операции используют колбэки или промисы и позволяют приложению продолжать работу во время ожидания результата.

Длинный ответ

Блокирующие операции — это синхронные операции, которые останавливают выполнение основного потока до своего завершения.

Примеры блокирующих операций:

  • fs.readFileSync() — синхронное чтение файла

  • crypto.pbkdf2Sync() — синхронное хеширование

  • Длительные вычисления в основном потоке

Неблокирующие операции — это асинхронные операции, которые используют колбэки, промисы или async/await.

Преимущества неблокирующих операций:

  • Не блокируют event loop

  • Позволяют обрабатывать другие запросы

  • Улучшают масштабируемость приложения

// Блокирующая операция
const data = fs.readFileSync('file.txt');
console.log(data);

// Неблокирующая операция
fs.readFile('file.txt', (err, data) => {
  if (err) throw err;
  console.log(data);
});

Когда использовать:

  • Блокирующие: для простых скриптов или инициализации

  • Неблокирующие: для веб-серверов и высоконагруженных приложений

  • Аватар

    Node.js Guru

    Demetra

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    2

  • Сложность:

    7

Навыки

  • JavaScript

    JavaScript

  • Node.js

    Node.js

Ключевые слова

#blocking

#non-blocking

#asynchronous

Подпишись на Node.js Developer в телеграм

  • Аватар

    Node.js Guru

    Demetra

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.