日期:2014-05-19  浏览次数:20673 次

请高手给个思路!
我想做了个发送Udp数据包的类MyUdpClass
其中有个方法:
void   Send   (byte[]   msg)
并在此方法内限速,如1   Mbps

每发一个数据包就将此包的大小记录到当前发送数据量,
m_TotalSend   +=   msg.Length;
同时每发一个包都检测下当前速率,如果超过限定值,
就Sleep(1),否则就发送。


应用程序调用这个类MyUdpClass的Send方法时间是不定的
目标是,无论他什么时候调用,都会被限速。


//   ------问题----问题----问题-----问题-----问题-----
“同时每发一个包都检测下当前速率”   这个速度的起算时间点
怎么记录呢?
也就是   m_TimeBegin   =   Environment.TickCount放到哪里才适合?
//   -------------------------------------------------


不用给其它细节的思路,只求起算时间的记录方法。



------解决方案--------------------
up