child_process
- 다른 언어로 작성된 파일을 호출할 수 있음
- 예를 들어, 효율적인 멀티 스레드 작업이 필요할 때 worker thread가 아닌 다른 언어로 멀티 스레드 작업을 하고 node에서 불러올 수 있다.
예제
const exec = require('child_process').exec;
var process = exec('dir');
process.stdout.on('data', function (data) {
console.log(data.toString());
});
process.stderr.on('data', function (data) {
console.error(data.toString());
});
다른 프로세스 불러오는 방식
spawn.js 생성
const spawn = require('child_process').spawn;
const process = spawn('python',['test.py']);
process.stdout.on('data', function (data) {
console.log(data.toString());
});
process.stderr.on('data', function (data) {
console.error(data.toString());
});
- test.py 생성 후 멀티 스레드(또는 실행할 작업)작업 진행
- spawn.js 실행 (단, 언어가 깔려 있어야 함.)