面对goroutine我们都需要等待它完成交给它的事情,等待它计算完成或是执行完毕,所以不得不在程序需要等待的地方使用time.Sleep()来睡眠一段时间,等待其他goroytine执行完毕,下面的代码打印1到100的for循环可以在很快的时间内运行完毕,但是我们必须添加time.Sleep()来等待其打印完毕,如果我们不等待仿佛什么也没有发生一样。。。。。这就是我最开始学习goroutine想到的笨方法。。。。这里我们可以从控制台看到我们的胜利成果,但是我们有更好的处理方式:sync.WaitGroupWaitGroup对象内部有一个计数器,最初从0开始,它有三个方法:Add() Done() Wait() 用来控制计数器的数量从而达到等待的目的。本文主要是记录在学习golang语言过程中错误使用sync.WaitGroup以及指针引起的报错,并且纠正过程。
暂无评论