1

我在 go 网站之旅中运行以下代码

package main

import "time"
import "fmt"

func main() {
    c := time.Tick(1 * time.Minute)
    for now := range c {
         fmt.Printf("%v\n", now)
    }
}

但它说 throw: all goroutines are sleep - 死锁!

goroutine 1 [chan receive]:
main.main()
    /tmpfs/gosandbox-25c44134_87776a49_1b5620b3_abba0ea7_70540ccf/prog.go:8 +0x53

这是他们方面的问题还是我的代码中的问题?

4

1 回答 1

4

[WorksForMe]

如果您在 golang.org 上运行此代码,它将无法正常工作。它的规则有些不同,它不允许这样的睡眠。而是在本地安装 Go 编译器并在您自己的计算机上运行它。

此外,您可能希望更改time.Minutetime.Second,这样您就可以看到它实际上在做什么,而无需等待一整分钟。

于 2012-09-22T22:30:19.563 回答