我的数据库中有一个“约会”事件列表,例如下午 3:00 等,它们有不规则的时间间隔,例如 15 分钟后,下一个 30 分钟后,下一个 25 分钟后。一种方法是我运行一个线程/计时器,它每分钟检查一次数据库是否是下一次约会的那一分钟。我想要一些其他机制,通过它我可以在下一个保存的时间触发警报/事件/动作在我的数据库中...怎么做...
问问题
208 次
3 回答
2
于 2010-01-19T21:29:17.077 回答
1
获取数据库中下一次约会的日期/时间,从该 DateTime.Now 中减去以获得 TimeSpan,然后使用该时间跨度触发计时器一次,类似于以下内容:
class MainClass
{
public static void FireTimerAt(DateTime next)
{
TimeSpan waitTime = next - DateTime.Now;
new Timer(delegate(object s) {
Console.WriteLine("{0} : {1}",
DateTime.Now.ToString("HH:mm:ss.ffff"), s);
}
, null, waitTime, new TimeSpan(-1));
}
}
于 2010-01-19T22:00:53.693 回答
0
提供一种以指定时间间隔执行方法的机制。这个类不能被继承。
于 2010-01-19T21:31:26.943 回答