在Golang中,运行带go或不带go的函数有什么区别

在Golang中,运行带go或不带go的函数有什么区别,go,Go,我是新来的。我的问题是运行一个函数有什么区别。例如,在一个.go文件中,我有一个test函数,当我调用这个函数时,test和go test有什么区别。调用它时,test将运行。go测试将完全独立于测试本身异步运行 如果您有这样一个程序: func main() { test("bob") go test("sue") } func test(msg string) { fmt.Printf("hello %v", msg) } 您将只看到输出 你好,鲍勃 因为主函数的执行一直

我是新来的。我的问题是运行一个函数有什么区别。例如,在一个.go文件中,我有一个test函数,当我调用这个函数时,test和go test有什么区别。

调用它时,test将运行。go测试将完全独立于测试本身异步运行

如果您有这样一个程序:

func main() {
   test("bob")
   go test("sue")
}

func test(msg string) {
  fmt.Printf("hello %v", msg)
}
您将只看到输出

你好,鲍勃

因为主函数的执行一直跳到最后。因为GoTestSue是它自己的独立函数,所以没有什么需要等待它完成

您可以通过使用fmt.Scanln&input输入time.Sleep或命令行输入来阻止go testsue


问题是什么是戈罗廷。看一看。如果你是新来的围棋爱好者,那就去玩一玩,再进行一次围棋之旅。那就这么问吧。@nilsmagnus谢谢。