问一个纠结了很久的问题 求程序大牛解答

LichKing (十个小穴有松紧) | 2013-09-09 10:47

是这样的

我想用.net 写一个到xx时xx分xx秒执行某个操作 比如说 弹出提示 去开会

是不是需要用 timer 每一秒都对比一下 计划时间和系统时间 是否一致

如果一致 那么弹出提示

这样做 是不是太笨了 太费资源了?

能不能简单一些的方法?

[原文地址]

相关讨论:

1#

国士无双 (十口水井有深浅!) | 2013-09-09 11:25

at...time

2#

国士无双 (十口水井有深浅!) | 2013-09-09 11:26

系统自带at,你写个提醒小程序就行

3#

dyun (shall we begin?) | 2013-09-09 11:43

好像很简单呀,http://www.cnblogs.com/slave2/archive/2008/03/25/1122239.html,貌似这个是基于Event的。

另外,即使你是while循环,进行时间的对比,对比后如果时间未到,你加个sleep,也不会很耗系统资源,sleep的时候会让出CPU的时间片!

右边感谢吧!

4#

核攻击 (统治全球,奴役全人类!毁灭任何胆敢阻拦的有机生物!) | 2013-09-12 11:13

1、系统计划任务功能

2、循环判断

5#

核攻击 (统治全球,奴役全人类!毁灭任何胆敢阻拦的有机生物!) | 2013-09-12 11:16

还有个比较另类的:

1、先判断当前时间和目标时间差值多少毫秒,保存为变量:x

2、sleep x

3、睡眠结束后,触发指定功能。

该方法优点是,几乎不占用任何系统资源,采用“冬眠”方式“唤醒”自己,算是比较奇葩吧。

示例代码:

x = 目标时间 - 当前时间
sleep x
alert("yooo~")