您描述的用例让我想到了dnode,您可以使用它轻松地公开由不同进程调用的函数,这些进程由使用网络套接字(和socket.io的dnode协调),因此您可以在浏览器中使用相同的机制。
据我所知,最简单的方法是使用child_process.fork():
这是生成
spawn()节点进程的功能的特例。除了在普通的ChildProcess实例中包含所有方法之外,返回的对象还内置了一个通信通道。子频道上的事件写入child.send(message,[sendHandle])并通过该'message'事件接收消息。
因此,对于您的示例,您可以有example2.js:
var fork = require('child_process').fork;var example1 = fork(__dirname + '/example1.js');example1.on('message', function(response) { console.log(response);});example1.send({func: 'input'});
和example1.js:
function func(input) { process.send('Hello ' + input);}process.on('message', function(m) { func(m);});
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)