我必須向網絡的每個主機發送一個 UDP 數據包,比如 N 個主機。我當前的 C 實現非常簡單:打開一個 UDP 套接字sendto為每個主機使用同一個套接字使用 Go 我有net.Conn( Connection ),而不是套接字。如何僅使用一個 fd 將 UDP 數據包發送到不同的主機?就像現在我必須關閉和打開net.ConnN 次。預先感謝您的幫助 :)
1 回答

白豬掌柜的
TA貢獻1893條經驗 獲得超10個贊
使用net.ListenUDP創建具有所需本地端口的 UDP 套接字(或 0 以獲得分配的可用端口)。這將為您提供一個net.UDPConn,它具有WriteTo和ReadFrom方法(等效于sendto
and recvfrom
)。WriteTo/ReadFrom 和 WriteToUDP/ReadFromUDP 之間的區別在于前者實現了通用的PacketConn接口,而后者是特定于 UDP 的,如果你知道你總是使用 UDP,它可以減少強制轉換的數量。
- 1 回答
- 0 關注
- 157 瀏覽
添加回答
舉報
0/150
提交
取消