您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

什么算作CPU密集型任务(例如排序,搜索等)?

什么算作CPU密集型任务(例如排序,搜索等)?

诸如“密集型”或“昂贵”之类的术语是相对的,并不是什么活动总是占用大量cpu的。一般来说,不是I / O的都是cpu。而且I / O在node.js中是异步的,所以不是问题。因此,除了I / O昂贵之外,我们一无所有。

您选择一般模式的方法是明智的。排序,搜索甚至算法通常都受cpu限制。当然,您无法消除cpu使用率,但是如果您可以对数据库进行排序而不是对应用程序代码进行排序,则可能会更好。

我也会注意大型循环。一个不会触发任何异步事件的循环是一个瓶颈。当然,不能完全避免循环。它们是编程中不可或缺的事实。如果循环很短,那就没问题了。如果找到运行10,000次的循环,则可能需要考虑使用setTimeout,process.nextTick或单独的节点进程将其分解。

10,000人被任意挑选。这取决于循环的作用。您的里程可能会有所不同。

其他 2022/1/1 18:14:25 有659人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶