and*_*eas 3 c# performance udp
我描述了一些样板UDP代码,速度非常适合只发送一些少量数据(这是我的意图).
但与"发送"方法相比,"连接"方法"非常慢".这需要50 - 80毫秒:
udpClient = new UdpClient();
udpClient.Connect("HOSTNAME", 11000);
然后,发送几乎不会被1毫秒分析,因为它的速度非常快:
Byte[] sendBytes = Encoding.ASCII.GetBytes("Is anybody there?");
udpClient.Send(sendBytes, sendBytes.Length);
我想知道这种"连接"方法是做什么的,因为UDP在设计上是无连接的.
如果我省略了connect方法,那么每次调用发送速度会变慢:
udpClient.Send(sendBytes, sendBytes.Length,"HOSTNAME",1100);
有机会改善"连接"速度吗?
免责声明:我知道UDP是不可靠的,但对于我的应用程序(客户端统计数据,无论如何都不是100%准确),如果包的顺序错误并且甚至一些丢失的包都不会杀了我也没关系.
udpClient.Connect设置默认主机名和端口,因此您可以在不指定它们的情况下调用Send.花费时间的是名称解析 - 将HOSTNAME转换为IPAddress.
如果您在Connect中执行一次,则每次发送时都不必这样做,这样更快.
| 归档时间: |
|
| 查看次数: |
1549 次 |
| 最近记录: |