我试图创建一个双向街道之间的两台计算机使用UDP作为协议。也许我不理解net.ListenUDP的意义。这不应该是个封锁呼叫吗正在等待客户端连接?
addr := net.UDPAddr{
Port: 2000,
IP: net.ParseIP("127.0.0.1"),
}
conn, err := net.ListenUDP("udp", &addr)
// code does not block here
defer conn.Close()
if err != nil {
panic(err)
}
var testPayload []byte = []byte("This is a test")
conn.Write(testPayload)
1条答案
按热度按时间clj7thdc1#
它不会阻塞,因为它在后台运行。然后你就从连接中读取。
检查this答案。它有一个在go中使用UDP连接的工作示例,以及一些使其工作得更好的提示。