time.sleep 本身有消耗吗?
来源:7-1 为什么要用 Channel,共享内存不好用吗?

冼星扉
2022-05-28
package main
import (
"fmt"
"time"
)
var i uint32
func main() {
//fn, _ := os.OpenFile("cpu.profile", os.O_CREATE|os.O_RDWR, 0644)
//defer fn.Close()
//pprof.StartCPUProfile(fn)
//defer pprof.StopCPUProfile()
go add()
time.Sleep(1 * time.Second)
fmt.Println(i)
}
func add() {
for {
i++
time.Sleep(1 * time.Millisecond)
}
}
预期打印接近1000的数字,最后打印了870左右的数字。老师,请问这是什么原因?
写回答
1回答
-
Moody
2022-05-28
这是个并发冲突问题,6-1节会讲到022022-05-28
相似问题