替代在节点分叉进程?
对于我的服务器上的大型基于cpu的任务,我正在使用:
var n = cp.fork('./worker.js'); // tell worker to start work n.send({"msg": "startWork"}); // worker has finished n.on('message', function(m) { // continue here.. });
我这样做是因为这样我的服务器可以自由服务于其他客户端连接。
然而,我宁愿不把代码分割成不同的文件,任何人都知道一个好的npm模块,也许是一个线程库,允许我这样做,即在一个新的线程上产生一个工作函数,然后得到一个callback做了什么?
检查webworker线程 ,它应该做你想要的。 还要考虑使用更高效的语言(例如C ++)编写CPU密集型任务,并通过使用libuv使这些任务asynchronous,如果具备必要的技能,则效率会更高。
编辑:另外,不要害怕把你的代码分成不同的文件,如果正确完成,这是一个非常有用的方法来组织你的代码。
- 如何获取express.js中的所有参数(post / get / etc)
- 带有节点的内存中的Transpile TypeScript
- angular度控制器 – 保存节点发送的接收文件
- Nodejs:如何用javascript中的其他字符replace数组中的某些字符
- 获取TypeError:当使用cheerio和jsonframe进行刮取时,selector.includes不是一个函数
- pg-promise helpers.update不起作用
- callback函数socket.io + node.js
- 用mochatestingasynchronous函数
- Sails.jsredirectparam