【发布时间】:2012-11-07 01:18:35
【问题描述】:
根据Understanding the node.js event loop,node.js 支持单线程模型。这意味着如果我向 node.js 服务器发出多个请求,它不会为每个请求生成一个新线程,而是会一个一个地执行每个请求。这意味着如果我在我的 node.js 代码中对第一个请求执行以下操作,同时一个新请求进入节点,第二个请求必须等到第一个请求完成,包括 5 秒的睡眠时间。对吧?
var sleep = require('sleep');
sleep.sleep(5)//sleep for 5 seconds
有没有办法让 node.js 为每个请求生成一个新线程,这样第二个请求就不必等待第一个请求完成,或者我可以只在特定线程上调用 sleep?
【问题讨论】:
-
你不需要那样睡觉。你应该看看 setTimeout -> nodejs.org/api/globals.html#globals_settimeout_cb_ms
标签: multithreading node.js asynchronous