在CTP平台下,有没有人测试过用这两种连接方式哪种更快? 我测试的结果是TCP的接收数据速度大于UDP,测试方法如下: 在OnRtnDepthMarketData函数下用下面的代码: GetLocalTime( &sys_time ); cerr<<pDepthMarketData->UpdateTime<<"::"<<sys_time.wSecond*1000+sys_time.wMilliseconds<<endl; 同一个节点下TCP的程序平均快1ms 原因不详。
首先,我想请有条件的朋友测试一下,是否跟我的结论一致。 这样可以排除是否我的代码或测试逻辑有误。 如果其他人测试的结论和我的一致。 我能够想到的原因是,TCP和UDP拆包的实现细节对用户是屏蔽的,有可能是因为UDP拆包的实现细节不够优化。 抛砖引玉,请大家补充
你的测试方法有问题: 对于相差1ms的数据,用GetLocalTime这个函数是不合适的,因为GetLocalTime的精度是1ms。 要得到高精度的结果,用QueryPerformanceFrequency()+QueryPerformanceCounter()比较合适。