0

Node.js コードを記述する際の一般的なルールは、すべてのコードが非ブロックであり、イベントを介して通信する必要があるということです。Node.js 用の Socket.IO ライブラリを使用して記述されたこのコードがブロックされた接続を作成するのか、それとも一般的な Node.js ルールに従っているのかを知りたいです。

sio.sockets.on('connection', function (socket) {
  socket.on('message', function (msg) {
    console.log("Received message"+message);
  });

  socket.on('cookie', function (msg) {
    console.log("Cookie Received");
    console.log(msg);
  });

  this.send('hello');


  socket.on('disconnect', function (){
    console.log('Disconnected');
  });
});

どんな助けにも感謝します。

4

1 に答える 1

2

いいえ、node.js socket.io サーバーは、標準ノードのノンブロッキング API で tcp をリッスンします

つまり、コントロールは の直後に次のステートメントに移動します。sio.sockets.on(..);この呼び出しで発生するのは、「javascript 関数オブジェクトを構築し、リスナー配列に割り当てる」ことだけです。

于 2011-07-12T02:41:49.127 に答える