-7
我是Go的新手。我的問題是運行帶或不帶Go的函數有什麼區別。例如在一個.go文件中,我有一個test()函數,當我調用這個函數時,「test()」和「go test()」有什麼區別。Golang有什麼區別可以運行一個功能
我是Go的新手。我的問題是運行帶或不帶Go的函數有什麼區別。例如在一個.go文件中,我有一個test()函數,當我調用這個函數時,「test()」和「go test()」有什麼區別。Golang有什麼區別可以運行一個功能
test()
將在您調用它時運行。 go test()
將自行異步運行,完全獨立於test()
。
如果你有一個這樣的程序:
func main() {
test("bob")
go test("sue")
}
func test(msg string) {
fmt.Printf("hello %v", msg)
}
你只能看到輸出
你好鮑勃
因爲main
功能執行,一直到結束跳躍。 go test("sue")
沒有什麼可以完成,因爲它是它自己的獨立功能。
您可以通過將在time.Sleep
或命令行輸入與fmt.Scanln(&input)
非常感謝! – michael
阻塞
go test("sue")
的問題是「什麼是夠程」。看看https://gobyexample.com/goroutines。 – nilsmagnus如果您是Go的新手,那麼您可以前往https://tour.golang.org進行遊覽,然後遊玩並再次參觀。然後問SO。 – Volker
@nilsmagnus謝謝。 – michael