Golang的time包装有其他选择吗?我无法掌握其笨重的界面和奇怪的做事方式.整体语言很棒,但这部分内容从未与我点击过.
任何人?一个非常好的,彻底的教程也可以工作(我还没有设法找到一个)
我现在要做的是goroutine每秒仅更新10次(或我设置的任何变量间隔).我还没有实现它,因为包不好玩.这是伪代码.
function GoRoutine(updatesPerSecond int) {
interval = 1000msec / updatesPerSecond
for {
if enoughTimeHasPassed {
doThings()
}
}
}
Run Code Online (Sandbox Code Playgroud)
您是否阅读了http://golang.org/pkg/time/上的文档?
你需要使用Ticker:
func Loop(fps int) {
t := time.NewTicker(time.Second / time.Duration(fps))
for t := range t.C {
fmt.Println("tick", t)
}
}
func main() {
go Loop(60)
time.Sleep(10 * time.Second)
}
Run Code Online (Sandbox Code Playgroud)
那就像使用它一样go Loop(60).