从调用另一个 goroutine 的 goroutine 返回

Returning from a goroutine which calls another goroutine

我想知道当 returns 从另一个 goroutine 调用的 goroutines 会发生什么。他们会继续 运行 还是被终止? 这是一个示例代码来说明我的意思:

func func() {
    // Doing something
}

func func2() {
        go func()
        // Doing things that end with a return
    }

func main() {
    go func2()
}

当 func2() goroutine returns 时 func() goroutine 会发生什么?

你可以在优秀的 https://play.golang.org playground 上做实验! 我推荐在那里做实验 - 它对 golang 学习有很大帮助。

https://play.golang.org/p/OJ9sgakV-S

我添加了 2 秒延迟,因为如果程序退出太快,您将看不到 goroutines 的结果。