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