0

我知道 nodejs 中的 foreach 是阻塞的。我正在 nodejs 中开发一个 API 服务器,我需要解析 req.body 以生成某种签名来验证请求。所以我的问题是如果我在 req.body 上使用 forEach 会阻止其他请求吗?如果它被阻塞如何克服它?

4

2 回答 2

2

forEach 是阻塞的,但对于大多数用例来说它很好,只要你的 array.length * function.runTime 不是很大,除非你正在做 IO 或加密,否则它不应该是很大的。如果您正在做一些长时间运行的事情,您可以将 forEach 替换为 async.forEach ( https://github.com/caolan/async )

于 2013-04-10T05:47:16.777 回答
0

我发现异步非常适合服务器端的短期工作 - 但如果你想要更轻的东西并且可以处理更少的修饰,你可以调整其中之一: http: //book.mixu.net/ch7.html

根据我的经验,速度要快得多……这在低功耗嵌入式设备或低端服务器上运行时很重要

于 2013-04-11T10:22:12.980 回答