如果满足某个基于时间的条件,我怎么能让WinForms程序做一些特定的事情?
我以为我可以用两个线程做一些事情,其中一个线程运行正常程序,另一个线程仅循环检查基于时间的条件是否为真,当条件为真时它发出事件信号.
但是我不确定最好的方法.程序中的哪个位置我会调用两个线程?也许我在想这一切都错了?
你会怎么做?
更多信息: 它要做的是检查data.dat文件,看看它上次更新的时间.如果是一个月或更长时间,那么做具体的事情.这仍然可以通过计时器完成吗?
注意: 我认为注意System.Timers和System.Windows.Forms.Timer之间的区别可能很有用......
我认为您应该使用设置为智能间隔的计时器来检查是否满足基于时间的条件.
这取决于你的基于时间的条件.这是一个特殊的时间或间隔,之后你想做一些特别的事情吗?如果是第二个,你可以使用Timer,并在触发Timer.Elapsed事件时执行你必须做的事情.
编辑后编辑:如果希望每次文件更改时触发事件,请使用FileSystemWatcher
Edit2: 这是 System.Windows.Forms.Timer和System.Timers之间的区别:
Windows窗体计时器组件是单线程的,精度限制为55毫秒.如果您需要更准确地多线程定时器,使用Timer类的System.Timers命名空间.
| 归档时间: |
|
| 查看次数: |
253 次 |
| 最近记录: |