相关疑难解决方法(0)

防止main()函数在goroutines在Golang中完成之前终止

已经厌倦了这个人为的例子:

package main

import "fmt"

func printElo() {
    fmt.Printf("Elo\n")
}

func printHello() {
    fmt.Printf("Hello\n")
}

func main() {
    fmt.Printf("This will print.")
    i := 0
    for i < 10 {
        go printElo()
        go printHello()
        i++
    }
}
Run Code Online (Sandbox Code Playgroud)

这个程序的输出只是"这将打印".输出goroutine printElo()并且printHello不会被发出因为,我猜,main()函数线程将在goroutines甚至有机会开始执行之前完成.

在Golang中使类似代码工作而不是过早终止的惯用方法是什么?

concurrency program-entry-point go goroutine

10
推荐指数
1
解决办法
4032
查看次数

标签 统计

concurrency ×1

go ×1

goroutine ×1

program-entry-point ×1