我正在使用计时器已用事件进行自动数据库备份,计时器将每隔5秒检查一次,当前时间等于app.config中给出的时间时,将发生数据库备份。我希望在备份发生时立即让计时器再次检查。任何人都可以帮助我。
答案 0 :(得分:1)
如果使用Sytem.Timers.Timer对象,则执行
timer.Stop()
作为已用事件的第一行,然后执行备份,然后执行
timer.Start()
最后重启事件。
如果使用System.Threading.Timer,请使用
timer.Change(Timeout.Infinite, Timeout.Infinite)
然后使用适当的值重新启动它。
答案 1 :(得分:1)
一旦当前时间等于app.config中给出的时间,就会发生数据库备份
这有一个不起作用的诀窍。配置可以说10:05:00,计时器在10:04:58和10:05:03过去。每5秒触发一次计时器是没有意义的。只需点燃一次。备份到期时。如果用户更改了截止时间,请停止并重新启动计时器以使用更改的TimeSpan。
答案 2 :(得分:0)
备份运行时暂停计时器。
否则..(不确定您使用的DBS)为什么不使用SQL Server代理作业?