我已经尝试测量套接字发送时间的时间:
stopWatch.Start();
socket.Send(buffer);
socket.Close();
stopWatch.Stop();
但是~95%的时间,秒表返回时间<1秒(5mb和更大的缓冲区)。
在.5-1毫秒内运行socket.send()
表示该文件已发送,即使您仍在下载该文件。我怎样才能更改我的代码,以便返回正确的上传时间?
谢谢。
答案 0 :(得分:0)
我刚刚意识到马克可能确实是对的。当然,您的代码不足以以某种方式提供任何指导。
答案 1 :(得分:0)
你可以尝试:
DateTime start = DateTime.Now;
socket.Send(buffer);
socket.Close();
TimeSpan span = DateTime.Now.Subtract(start);
double msec = span.TotalMilliseconds;
答案 2 :(得分:0)
MarcB似乎是正确的。最重要的是,确保从秒表获得更高的精确度,例如
double seconds = (double)stopWatch.ElapsedTicks / Stopwatch.Frequency;