Golang - 在UDP连接关闭时优雅地停止ReadFromUDP

时间:2016-05-17 13:15:53

标签: go udp

因此,我们有一个全双工系统设置,它利用通道和不同的goroutine进行UDP数据包处理(读,写,处理)。因此,我们在等待goroutine中的传入数据包时阻塞ReadFromUDP

我们遇到这个特殊问题ReadFromUDP在等待数据包到达并且连接在其他地方关闭时抛出错误(显然)。

打印的错误如下:

  

阅读udp 127.0.0.1:8091:使用封闭式网络连接

这是非常合理的,因为我们实际上通过频道关闭另一个goroutine中的连接。

是否有人知道在发生这种情况时是否存在未获得该错误的方法(除了捕获它)或者是否存在另一种方式来指示ReadFromUDP停止阅读而不使用超时?

0 个答案:

没有答案