簡體   English   中英

我應該 require('child_process').spawn('node', ['-e', code]) 運行冗長的操作嗎?

[英]Should I do require('child_process').spawn('node', ['-e', code]) to run a lengthy operation?

JavaScript 不允許多線程。 所以我想知道我是否應該使用

const node = require('child_process').spawn('node', ['-e', code]);

其中code是我希望運行的冗長操作代碼。

我已經嘗試過了,它確實有效,主 JS 程序不會保持阻塞。

我也可以在超時后使用node.kill()來停止進程。

不,您不應該將child_process用於節點進程(除非您出於某種原因確實需要操作系統來管理單獨的進程)。

要在不阻塞的情況下運行 CPU 密集型 JavaScript 代碼,請使用工作線程 它們的開銷更少,通信更簡單,並且可以共享 memory。

暫無
暫無

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

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