当使用 NodeJS 在请求回调函数中执行长时间处理任务时,
handler = function(req, res) {
// long CPU processing task (non I/O), e.g. compute N digits of Pi
}
net.createServer(handler);
或
var express = require('express');
var app = express();
app.get('/', function (req, res) {
// long processing task
});
app.listen(3000);
它是否仍然是相同的胎面(那么它是否阻塞?)?
注意:我知道在这里执行长时间处理任务可能不是一个好习惯,但我很好奇 NodeJS 如何处理它。
最佳答案
它不可能创建线程。我引用here :
Node.js® is a JavaScript runtime built on Chrome's V8 JavaScript engine. Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient
所以,简而言之,Node 非常擅长管理并发
关于javascript - NodeJS 是否为每个请求创建一个新线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50748539/