2017-12-03 25 views
0

node.js의 함수에 무거운 알고리즘이 있습니다.다른 스레드에서 함수를 호출하는 방법

성능을 절약하기 위해이 함수를 다른 스레드에서 호출하려고합니다. 시도 :

let ChildProcess = require('child_process'); 
const thread1 = ChildProcess.spawn(function() 
{ 
    reloadData(); 
}); 

function reloadData() { /* code */ } 

하지만 작동하지 않습니다. 다른 .js 파일이 아니라 현재 .js 파일에서이 함수를 호출하려고합니다. 감사합니다!

+0

답장을 보내 주셔서 감사합니다. 그럼 내가 어떻게 할 수 있니? – Skysork

+0

답변 [여기] (https://stackoverflow.com/questions/18613023/how-to-create-threads-in-nodejs) 및 [노드 의사] (https://nodejs.org/api)를보십시오. /child_process.html). –

+0

문제는 현재 .js 파일에서 직접 함수를 호출하는 스레드를 만드는 예제를 찾지 못했기 때문에 별도의 .js 파일을 호출하는 스레드를 만드는 예제 만 볼 수 있습니다 – Skysork

답변

2

child_process 기능이 작동하지 않기 때문에 찾고있는 예제를 찾을 수 없습니다. 당신이하려는 일을 할 수 없습니다.

새로운 node.js 프로그램에 다른 기능을 넣고 child_process 모듈을 사용하여 다른 프로그램을 실행해야합니다.

그런 다음 다양한 형식을 사용하여 stdio 또는 tcp 네트워킹과 같은 두 프로세스간에 통신 할 수 있습니다.

spawn()에 대한 인수도 올바르게 사용하지 않습니다. 첫 번째 인수 in the doc을 보면, 첫 번째 인수는 로컬 시스템에서 실행할 명령 또는 다른 프로그램입니다. 로컬 자바 스크립트가 아닙니다.

+0

고마워, 내 문제를 이해하고, 나는이 문제를 해결했다. – Skysork