Средняя сложность
node.js
Правильный ответ
Node.js использует неблокирующий ввод-вывод и событийный цикл для обработки асинхронных операций.
Node.js использует асинхронную модель выполнения, основанную на Event Loop и неблокирующих операциях ввода-вывода. Основные компоненты:
const fs = require('fs');
fs.readFile('file.txt', (err, data) => {
// Колбэк выполнится после завершения I/O
});
const crypto = require('crypto');
crypto.pbkdf2('password', 'salt', 100000, 64, 'sha512', (err, key) => {
// Выполняется в отдельном потоке
});
Пример современного подхода с async/await:
const fetchData = async () => {
try {
const response = await fetch('https://api.example.com');
const data = await response.json();
console.log(data);
} catch (error) {
console.error('Ошибка:', error);
}
};⚠️ Важно избегать блокировки Event Loop длительными синхронными операциями. Для CPU-intensive задач лучше использовать Worker Threads или отдельные процессы.