一个套接字,以达到多个地址

时间:2016-05-05 15:50:21

标签: go

我必须向网络的每个主机发送一个UDP数据包,比如N个主机。

我目前的C实现非常简单:

  • 打开UDP套接字
  • 在每个主机的同一套接字上使用.my-title-section { font-size:150%; } .my-content-section { padding:20px; background-color:#ccc; }

使用Go我有sendto(连接),而不是套接字。

如何仅使用一个fd将UDP数据包发送到不同的主机?

现在我必须关闭并打开net.Conn N次。

提前感谢您的帮助:)

1 个答案:

答案 0 :(得分:1)

使用net.ListenUDP创建具有所需本地端口的UDP套接字(或0以获取分配的可用端口)。这将为您提供net.UDPConn,其WriteToReadFrom方法(相当于sendtorecvfrom)。 WriteTo / ReadFrom和WriteToUDP / ReadFromUDP之间的区别在于前者实现了通用PacketConn接口,而后者是UDP特定的,如果您知道自己总是使用UDP,则可以减少转换量