性能

it2024-04-18  49

Golang 最初是由 Google 的工程师设计的,于 2009 年向公众推出。它的创建是为 C++提供替代方案,该替代方案易于学习和编码,并且经过优化可在多核 CPU 上运行。

从那时起,Golang 对于希望利用该语言提供的并发性的开发人员来说非常有用。该语言提供了 goroutine,使您可以将函数作为 goroutine 运行。

Golang 的一大优势是您可以轻松使用 goroutines。只需将go添加到函数前即可使其作为 goroutine 运行。Golang 的并发模型允许您跨多个 CPU 内核部署工作负载,从而使其成为一种非常有效的语言。

package main import (     "fmt"     "time" ) func f(from string) {     for i := 0; i < 3; i++ {         fmt.Println(from, ":", i)     } } func main() {     f("direct")     go f("goroutine")     time.Sleep(time.Second)     fmt.Println("done") }

尽管有多核 CPU 支持,Rust 仍然跑赢 Golang。Rust 在执行算法和资源密集型操作方面效率更高。该基准测试游戏[2]比较了 rust 和 golang 的不同算法,如二叉树。对于所有经过测试的算法,Rust 至少快 30%;在二叉树计算的情况下,最高可达 1,000%。Bitbucket 的[3]一项研究表明,Rust 与 C++的性能相似。

最新回复(0)