我想测量客户端使用 c# 通过 tcp 接收数据所花费的时间。
我使用 NetworkStream.Read 读取使用 NetworkStream.Write 发送的 100 兆位数据。我将缓冲区设置为相同大小的数据,因此没有缓冲区欠载问题等。一般看起来像这样。
Stopwatch sw = new Stopwatch();
sw.Start();
stream.Read(bytes, 0, bytes.Length);
sw.Stop();
问题是,发送者可能没有实际发送数据,但秒表已经在运行。如何准确测量接收数据所需的时间?我确实尝试使用远程 pc 流的时间流逝。写入,但写入所需的时间非常小。顺便问一下,秒表是完成这项任务最准确的工具吗?