什么是快路径、慢路径、热路径

我已经阅读了一段时间的 Go 源代码,有三个术语,即fast path, slow path,hot path出现了很多。

  • 快速路径:https : //cs.opensource.google/search?q=%22fast%20path%22&ss=go%2Fgo
  • 慢路径:https : //cs.opensource.google/search?q=%22slow%20path%22&ss=go%2Fgo
  • 热点路径:https : //cs.opensource.google/search?q=%22hot%20path%22&ss=go%2Fgo

所以,我的问题是,到底是什么fast pathslow pathhot path?这些术语是 Go 独有的吗?

回答

快路径是快的路径(即做更少的工作),而慢的路径是慢的路径(即做更多的工作)。例如,在向hashmap 添加值时,仅将值粘贴到空桶中是快速路径,而增加桶的数量,将所有值复制到新位置,然后插入新值是慢速路径. 添加浮点数时,其中一个是非正规数的情况是一条慢速路径,比普通数的路径慢很多倍。“路径”的概念表明,根据情况或提供的值,对于给定的函数,任何一个都可能发生;这不是快或慢的选择

“热”路径是大部分时间采用的路径,而“冷”路径是很少采用的路径。热路径是优化的好目标,因为它们是程序花费大部分时间的地方。当热道也是快道,而慢道也是冷的时候,幸福就会发生。

这些都不是 Go 特有的。它是计算领域的常用术语。


以上是什么是快路径、慢路径、热路径的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>