3.5.7 worker_threads

    노드에서 멀티 스레드 방식으로 작업하는 방법을 소개합니다. worker_threads 모듈로 가능합니다.

    먼저 간단한 사용 방법을 알아보겠습니다.

    worker_threads.js

    const {
      Worker, isMainThread, parentPort,
    } = require('worker_threads');
    
    if (isMainThread) { // 부모일 때
      const worker = new Worker(__filename);
      worker.on('message', message => console.log('from worker', message));
      worker.on('exit', () => console.log('worker exit'));
      worker.postMessage('ping');
    } else { // 워커일 때
      parentPort.on('message', (value) => {
        console.log('from parent', value);
        parentPort.postMessage('pong');
        parentPort.close();
      });
    }
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.