浏览代码

sycn-time cross period bug

lihz 7 年之前
父节点
当前提交
484103e9f7
共有 1 个文件被更改,包括 9 次插入7 次删除
  1. 9 7
      SyncTime/SyncManager.cpp

+ 9 - 7
SyncTime/SyncManager.cpp

@@ -152,12 +152,14 @@ bool HostServer::SyncManager::updateSync(unsigned long long rootIdCode, int idx,
         long long timeDelay = receiveTime - sendTime - _distance[localIdCode][msg.UpperIdCode()];
 
         timeDelay += upperTimeDelay;
-		if(timeDelay > TIME_MAX){
-			timeDelay -= TIME_MAX;
-		}
-		if(timeDelay + TIME_MAX < 0 ){
-			timeDelay += TIME_MAX;
-		}
+
+		timeDelay %= (TIME_MAX + 1);
+		//if(timeDelay > TIME_MAX){
+		//	timeDelay -= TIME_MAX;
+		//}
+		//if(timeDelay + TIME_MAX < 0 ){
+		//	timeDelay += TIME_MAX;
+		//}
         _historySync[rootIdCode][idx_synctime].HistSync[localIdCode].TimeDelay(timeDelay);
 
 
@@ -177,7 +179,7 @@ bool HostServer::SyncManager::updateSync(unsigned long long rootIdCode, int idx,
 
 			sprintf_s(filename, "%s\\%d.log", logDir.c_str(), localIdCode>>8);
 			ofstream outfile(filename, ofstream::app);  
-			sprintf_s(temp, "sn:%d, up:%d, %I64d, %I64d, %I64d, %I64d, r_cross:%d, s_cross:%d\r", SyncNum, msg.UpperIdCode() >> 8, receiveTime, sendTime, timeDelay, aa, bb, cc); 
+			sprintf_s(temp, "sn:%d, up:%d, rec:%I64d, upsend:%I64d, delay:%I64d, correct:%I64d, r_cross:%d, s_cross:%d\r", SyncNum, msg.UpperIdCode() >> 8, receiveTime, sendTime, timeDelay, aa, bb, cc); 
 			outfile << temp;
 		}