Sobes.tech
Back to questions
Junior — Middle
89

Имели ли вы опыт использования потоков worker для выполнения задач в многопоточном режиме?

Answer from AI

sobes.tech AI

Да, в Node.js я использовал worker threads для выполнения задач в многопоточном режиме, что позволяет распараллеливать CPU-интенсивные операции, не блокируя основной поток событий.

Пример использования worker threads:

const { Worker, isMainThread, parentPort } = require('worker_threads');

if (isMainThread) {
  const worker = new Worker(__filename);
  worker.on('message', (msg) => console.log(`Получено от воркера: ${msg}`));
  worker.postMessage('Привет, воркер!');
} else {
  parentPort.on('message', (msg) => {
    console.log(`Сообщение от главного потока: ${msg}`);
    parentPort.postMessage('Привет, главный поток!');
  });
}

Такой подход помогает эффективно использовать многопроцессорные системы для задач, требующих вычислительных ресурсов.