package main
import (
"fmt"
"time"
)
func main() {
time1 := time.Now()
f := 0
g := 0
h := 0
for i := 0; i < 1000000; i++ {
f += 1
g += f*2 + (f*f) + (f*f*f*f*f)
h += g*g*g + f*f
}
time2 := time.Now()
second2 := time2.Sub(time1)
fmt.Println(second2.Nanoseconds())
}
这是打印 0
作为输出。我还添加了一些打印语句来添加 IO 时间,然后还添加了 0
是输出。有人可以解释为什么会这样吗?
链接:https://play.golang.org/p/GUy9geJXBUA
最佳答案
这是因为你在 Go 操场上运行,time.Now()
被卡住并始终返回 Go 发布公告的时间。 (您可以通过 fmt.Println(time.Now())
进行检查。)
关于go - 非平凡代码golang的执行时间为零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63944406/