s

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

· 2023-08-06 (일) 14:35:49 · 2244 · 2

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

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

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

[code]
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!');
}
[/code]

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

|

댓글 2개

2023-08-07 (월) 13:53:13
간단한 코드면, Worker 도 알려주세요.
반쪽짜리 코드를 가지고 뭘 해볼수가 없네요.

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

여기 있군요.
2023-08-11 (금) 10:21:45
@더업스토리 자세한 설명 감사합니다.
댓글을 작성하시려면 로그인이 필요합니다.

개발자팁

5,403건

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

+
분류 제목 글쓴이 날짜 조회
node.js 23-08-13 조회 2,173
정규표현식 23-08-12 조회 2,056
node.js 23-08-11 조회 2,195
PHP 23-08-10 조회 2,156
node.js 23-08-09 조회 2,369
PHP 23-08-08 조회 2,451
node.js 23-08-07 조회 1,952
node.js 23-08-06 조회 2,245
PHP 23-08-05 조회 3,532
PHP 23-08-04 조회 2,591
JavaScript 23-08-03 조회 1,667
node.js 23-08-02 조회 1,559
node.js 23-08-01 조회 2,009
MySQL 23-07-31 조회 1,871
MySQL 23-07-30 조회 1,453
JavaScript 23-07-29 조회 1,879
웹서버 23-07-29 조회 5,208
PHP 23-07-28 조회 2,238
PHP 23-07-26 조회 2,396
기타 23-07-25 조회 1,969
jQuery 23-07-25 조회 3,131
23-07-25 조회 1,583
23-07-21 조회 1,968
23-07-21 조회 1,902
PHP 23-07-24 조회 2,128
MySQL 23-07-23 조회 1,837
PHP 23-07-23 조회 2,020
PHP 23-07-22 조회 3,180
PHP 23-07-22 조회 1,426
node.js 23-07-21 조회 5,277