노드로 멀티스레드 기능 구현하기 > 개발자팁

개발자팁

개발과 관련된 유용한 정보를 공유하세요.
질문은 QA에서 해주시기 바랍니다.

노드로 멀티스레드 기능 구현하기 정보

node.js 노드로 멀티스레드 기능 구현하기

본문

노드는 단일 프로세스이므로 멀티스레드기능을 구현하려면 다음과 같이 할수 있습니다.

노드(Node.js)에서 제공하는 내장 모듈인 'worker_threads'를 사용할 수 있습니다. 이 모듈을 사용하면 멀티스레드 환경에서 동시에 여러 작업을 처리할 수 있습니다.

아래는 간단한 예제 코드입니다.


const { Worker, isMainThread, parentPort, workerData } = require('worker_threads');
if (isMainThread) {
// 메인 스레드에서 실행할 로직
const worker = new Worker(__filename, {
workerData: 'Hello, worker!',
});
worker.on('message', (message)
=> {
console.log(`Worker: ${message}`);
});
} else {
// 워커 스레드에서 실행할 로직
const workerData = workerData;
console.log(`Main: ${workerData}`);
// 작업 완료 후 메시지 전송
parentPort.postMessage('Hello, main!');
}


이 예제에서는 메인 스레드에서 워커 스레드를 생성하고, 워커 스레드에서 작업을 처리한 후 메시지를 메인 스레드로 전송합니다. 이렇게 하면 멀티스레드 환경에서 작업을 분산하여 처리할 수 있습니다.
추천
0

댓글 2개

간단한 코드면, Worker 도 알려주세요.
반쪽짜리 코드를 가지고 뭘 해볼수가 없네요.

찾아보니 전체 코드는
https://inpa.tistory.com/entry/NODE-%F0%9F%93%9A-workerthreads-%EB%AA%A8%EB%93%88

여기 있군요.
전체 5,352
개발자팁 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT