【发布时间】:2011-09-15 16:22:36
【问题描述】:
我想制作一个程序,它会在未来的某个时间出现一个弹出窗口,例如。今晚5:00。基本上,该程序是约会、会议等的提醒/通知系统。
我的第一个直觉是创建一种“时钟监听器”,它会每分钟左右检查一次计算机的时间,看看 currentTime == alarmTime。但是,我不知道这是否占用了太多资源,或者让您的程序不断地做这样的事情是否只是一种不好的做法。另外,为了让闹钟准确,我认为它需要每秒检查一次,而不是每分钟检查一次(因为如果它不检查秒数并且会在 5:00:xx 响起,它可能会在 5 点响起:00:59,对于某些人来说可能为时已晚)。每秒检查时钟是否太多了?
我的第二个想法是当程序开始运行时,计算警报设置为响起的时间(例如,五小时后)。然后,等待五个小时,然后响起警报。但后来我想,虽然不太可能,但用户有可能更改计算机的时间,然后警报会在错误的时间响起。所以这真的行不通。
我见过一些使用线程的解决方案,但我还不熟悉,所以我宁愿不使用它们。
我倾向于第一个解决方案,但我想确保它高效且不会减慢其他程序的速度。可能是我想多了,看表是小菜一碟,但我只是想确保自己没有做错什么。
【问题讨论】:
-
我理解这个想法,这将是一个桌面应用程序吗?如果是,您是否只想为某些特定操作系统开发它?
-
是的,我希望它是一个适用于 Windows 的程序,在后台运行,然后只在闹钟设置为响起时弹出窗口。
-
选择第一个。对于在 GigaHertz 中工作的计算机来说,每秒检查一次时间是微不足道的。