简言
go语言提供了控制子协程的方法,除了waitgroup之外还可以利用context
步骤如下
1. 新建一个子协程的时候,在子协程的函数参数中传入context
2. 子协程循环读取传入的context中的Done()返回值通道中,有信号就可以退出了
3. 重点:父协程想关闭子协程时,调用其context的cancel函数,即会往其通道中发信号
context之WithCancel的使用见博客 https://blog.csdn.net/yzf279533105/article/details/107290645
context之WithTimeout的使用见博客 https://blog.csdn.net/yzf279533105/article/details/107292247
context之WithDeadline的使用见博客 https://blog.csdn.net/yzf279533105/article/details/107292263