做游戏需要服务器与客户端时间通信,下面记录一下某个游戏时间通信的例子
private static DateTime m_startTime = new DateTime(1970, 1, 1);
public static DateTime GetServerDateTime()
{
TimeSpan timeSpan = (DateTime.UtcNow - new DateTime(1970, 1, 1));
int servertime = (int)timeSpan.TotalSeconds;
DateTime result = new DateTime((long)servertime * 10000000L + UITool.m_startTime.Ticks, DateTimeKind.Unspecified);
result = result.ToLocalTime();
return result;
}
实际中的servertime是由服务器传过来的距离1970.1.1的秒数