编程语言
首页 > 编程语言> > javascript – 什么算作CPU密集型任务(例如排序,搜索等?)

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

作者:互联网

你认为什么是CPU密集型任务.例如……算法/代码(不是像视频编辑那样的用例等).原因似乎是不使用NodeJS的主要原因我真正喜欢的主要是CPU密集型任务.重要的是什么呢?例如,它是排序,搜索,横向图形,矩阵乘法吗?

解决方法:

像“密集”或“昂贵”这样的术语是相对的,并且并不总是很明显哪些活动是CPU密集型的.一般来说,任何非I / O都是CPU. I / O在node.js中是异步的,所以不是问题.因此,除了I / O昂贵之外,我们留下了一切.

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

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

10,000是任意挑选的.这取决于循环的作用.你的milage可能会有所不同.

标签:javascript,node-js,cpu-usage
来源: https://codeday.me/bug/20191005/1854909.html