伙计们,我想知道如果我只有一个案例(我的频道)并在给定频道关闭时发出结束信号,是在频道范围内还是使用选择更好?
给出示例:
go func() {
for v := range ch {
// do some stuff
}
}()
go func() {
for {
select {
case v, ok := <-ch:
if !ok {
return
}
// do some stuff
}
}
}()
首选哪种解决方案,为什么?请考虑这样一个事实,即 goroutines 本身可能会产生很多次(很多工人)。
陪伴而非守候
开满天机
相关分类