javascript - Node.js 中的长循环 : Yielding Using Timers?

标签 javascript node.js performance

我正在使用 Node.js循环浏览最终可能是一个相当大数组的帖子。

如果我使用 客户端 JavaScript 做类似的事情,我会使用计时器 as explained here以免阻塞线程。

我的问题是:“服务器端仍然是一个健全的练习吗?”或“我应该以不同的方式解决问题吗?”

最佳答案

在 node.js 中执行此操作的正确方法是将您的工作分成 block 并使用 process.nextTick当前一个 block 完成后将下一个 block 排队。这样一来,您就可以在每个工作 block 之间执行其他排队的回调。

更新:从 Node.js 0.10 开始,setImmediate通常应该使用而不是 process.nextTick 来实现此目的,因为 setImmediate 会屈服于事件循环以确保 I/O 不会被饿死,而是 process. nextTick 没有。

关于javascript - Node.js 中的长循环 : Yielding Using Timers?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12774035/

相关文章:

javascript - 根据单击哪个链接显示 HTML 元素

在 Visual Studio 2013 中调试时出现 Javascript 错误

javascript - azure移动应用程序查询如sql语句

node.js - 如何在部署后维护 Heroku 中不在 git repo 中的文件

performance - VBA,文件系统对象,速度/优点/缺点

javascript - 在嵌套类对象上定义属性

javascript - 如何在 React 中等待 useDispatch 值?

javascript - 如何混合方法来强调而不在全局范围内引入它们?

python - python : multiple OR or IN in if statement? 中最好的方法是什么

VS 上的 sql INNER JOIN 表变量。内部连接(选择)开启