我有以下代码:
var net = require('net');
var server = net.createServer(function (stream) {
console.log("request");
});
console.log("== 1");
server.listen(8124, 'localhost',function(){console.log("listening");});
console.log("== 2");
server.close();
输出是:
== 1
== 2
然后网络模块抛出Not running
的例外
在node.js文档中,它写道:
Stops the server from accepting new connections. This function is asynchronous, the server is finally closed when the server emits a 'close' event.
如果它是异步的那么为什么我得到那个输出?它应先听,然后关闭它。
谢谢!
答案 0 :(得分:0)
无法保证服务器在关闭之前会开始侦听(因为侦听是异步的)。
关闭服务器,如:
server.listen(8124, 'localhost', function () {
console.log("listening");
server.close();
});
应该有用。