簡體   English   中英

node.js在子進程中運行功能?

[英]node.js run function in child process?

我有一個node.js應用程序,該應用程序通過Web請求接收文件,然后將轉換過程應用於此文件。 由於任務長時間運行,因此需要與主線程分開運行。

目前,我剛剛通過setTimeout()調用了必要的代碼。 為了將主應用程序與轉換過程隔離開來,我想將其移到子進程中,因為它運行時間長,並且我想將主代碼與正在完成的工作隔離開(我擔心太多了嗎?)。 目前,我正在致電:

const execFile = require('child_process').execFile;
const child = execFile('node', './myModule.js', (error, stdout, stderr) => {
  if (error) {
    throw error;
  }
  console.log(stdout);
});

這是在node.js中正確的方法,還是只是通過指定模塊和參數啟動子進程,而不必將“ node”指定為可執行文件?

剛剛看到,node.js為執行模塊提供了“ fork”功能,盡管它們需要像編寫命令行參數一樣編寫,並處理process.argv數組。

命令調用為:

child_process.fork(modulePath[, args][, options])

更多細節在這里

在我的特定情況下,分叉可能沒有意義,因為我正在使用的node.js庫已經在進行分叉。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM