您的位置:首页 > 编程语言 > C#

C#中精确计时的一点收获

2012-03-06 17:26 369 查看
原文地址:/article/5197925.html

我的应用示例

public static class ServerDateTime
{
static Stopwatch sw = new Stopwatch();
static CommonPresenter presenter = new CommonPresenter();
static DateTime LastCorrectTime = DateTime.Now;
static DateTime _now;
/// <summary>
/// 服务器时间(可能会有网络延迟),如果服务器访问失败则为本地时间
/// </summary>
public static DateTime Now
{
get { return LastCorrectTime.Add(sw.Elapsed); }
private set { _now = value; }
}

static ServerDateTime()
{
Now = DateTime.Now;
GetServerDateTime(null);
sw.Start();
}

static void GetServerDateTime(MethodInvoker callback)
{
presenter.RequestServerDateTime(serverdatetime =>
{
Now = serverdatetime;
LastCorrectTime = serverdatetime;
if (callback != null) callback();
});
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: