直到完成事件发生的经过时间是否表示套接字速度?

时间:2013-08-05 05:32:23

标签: c# .net multithreading sockets windows-phone-7

我使用UDP方法通过.NET socket发送SendAsync条消息。

问题是:

在我完成活动之前发生了什么?

消息是否已将设备留在线路上?可以用经过的时间判断出网速度吗?

背景

我需要知道启动UDP发送操作的速率。如果消息在完成事件时将设备留在网络上,我可能会添加一些缓冲区并启动下一个发送操作。我不关心丢失的消息,甚至不关心实际的传输速率。我只想粗略地了解我可以发送消息的速度。

1 个答案:

答案 0 :(得分:1)

不,一点也不。这不仅仅是因为您使用UDP,更重要的是因为您使用SendAsync。通常,当您使用以异步结尾的方法时,这意味着他们不会阻止当前线程并且它们将在后台运行,因此您无法测量何时他们完成了工作。为了更清楚地说明这一点,您最好学习多线程here。“线程使您的C#程序能够执行并发处理,因此您可以一次执行多个操作”和通常Async方法以这种方式运作,即异步。所以,如果你对这个Async事情有充分的理解,你甚至无法找到关于速度的一些措施。