ch := make(chan int,100)go func(){ for ch 如何停止这样的 ?goroutine?2 E4 R, d& R Q/ @( M. M
6 Z/ j! p; O3 _! O
解决方案: $ C9 Q; x$ A# B' w
通常,你去 goroutine 传输一个信号通道(可能是单独的)。当你想要 goroutine 停止时,信号通道用于推入值。goroutine 定期轮询通道。一旦检测到信号,它会退出。[code]quit := make(chan bool)go func() for select case <- quit: return default: Do other stuff Do stuff// Quit goroutinequit <- true7 }- S+ |7 h0 X ]$ z0 N