Socket.IO多线程吗?

udi*_*idu 7 node.js socket.io

我有一个socket.io监听套接字的服务器:

io.sockets.on('connection', function(socket){
    socket.on('myEvent', function(data){
        socket.emit('eventReceived', { status: 1 });
    });
});
Run Code Online (Sandbox Code Playgroud)

这段代码是否在多线程中工作?如果两个客户端将发出该myEvent事件,它将同时为两个客户端工作?还是会一个接一个地处理?

非常感谢!

del*_*ber 1

Node.js 中没有任何内容是多线程的,包括通过 npm 提供的任何包。核心中有一个可用的实验性集群模块

http://nodejs.org/docs/v0.10.2/api/cluster.html

  • 仅仅因为 Node.js 有一个事件循环,并不意味着幕后的异步进程不是多线程的。因为很多都是。这是一篇解决这方面问题的文章:https://www.future-processing.pl/blog/on-problems-with-threads-in-node-js/ (2认同)