2017-12-03 16 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)と[node doc](https://nodejs.org/api)を見てください。 /child_process.html)。 –

+0

問題は、現在の.jsファイル内の関数を直接呼び出すスレッドを作成する例が見つかりませんでした。別の.jsファイルを呼び出すスレッドを作成する例を参照してください。 – Skysork

答えて

2

あなたが探している例が見つからないのは、child_process関数の動作方法ではないからです。あなたがしようとしていることをすることはできません。

新しいnode.jsプログラムに他の関数を配置し、次にchild_processモジュールを使用して他のプログラムを実行する必要があります。

次に、stdioやtcpなどの2つのプロセス間でさまざまな形式を使用して通信することができます。

また、spawn()への引数も正しく使用されていません。最初の引数in the docを見ると、その最初の引数はローカルシステムで実行するコマンドまたは別のプログラムです。それは地元のJavascriptの一部ではありません。

+0

ありがとう、私は私の問題を理解している、私はこの問題を解決マーク – Skysork

関連する問題