大家都知道node.js是单线程的,那么如何证明呢?
下面是证明的例子:
var http=require("http");
//在服务器程序外面我们定义一个变量a
var a=0;
var server=http.createServer(function (req,res) {
//让a数值加1
a++;
res.writeHead(200,{
"Content-Type":"text/html;charset=utf-8",
});
res.end(a.toString());
});
server.listen(3000)
开启服务之后,把网址分给多个人去不停地刷新,会发现a的数值不是从1开始增加的,
其实这些人共享一个a,a的值越拉越大.这就说明nodejs是单线程的.
注意:这里是a.toString() 如果不加toString会报错,要求输出是字符串而不是数字