0
从信道读取
我的代码看起来是这样的:golang超时使用范围
outChannel := make(chan struct{})
...
for out := range outChannel {
...
}
我有一个生产者写入outChannel
并想从它读取超时(如果整体的处理时间超过XX秒) 。 这样做的正确方法是什么?
正如我只看到结构(在:https://github.com/golang/go/wiki/Timeouts)使用select
多case
■从渠道阅读,不过,这似乎并不适用使用range
一次。
是'break'只能从'select'打破。你需要一个标签或一个返回来从for循环中断。 – JimB
谢谢,我写得太快了。我添加了一个标签,但我通常认为这将在func里面,并且返回将更加可读。 – djd