相同的Golang代码不同的输出,为什么?

我正在尝试从golang.org执行示例:http : //tour.golang.org/#63

  • 我更改了代码以测试确切的内容。*

您可以看到那里的输出是:

http://img1.mukewang.com/60ab0bef0001a09806440600.jpg

hello

hello

hello

hello

hello

但是,当我将这些代码复制到Mac OS X 10.8(Go版本1.0.3)时,输出已更改:

http://img4.mukewang.com/60ab0bfe00017e0707640438.jpg

xxxxxx $ go version go版本go1.0.3 xxxxxx $ go go goroutine.go hello world hello world hello world hello world hello世界

根据这个答案,我应该使用runtime.GoSched,但是实际上我不需要。所以我认为出了点问题。

请帮助我,非常感谢。


呼如林
浏览 284回答 3
3回答

胡说叔叔

这是因为您正在调用在您的编程环境之外运行的goroutine。从字面上看,两个线程正在同时执行,并且输出将是随机的。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Go