我写了一个全天候运行的Windows C#应用程序,并收集传感器数据,并将其存储在数据库中。
每天晚上一次,我对前一天的数据运行一些algorithm。 如果应用程序在整个前一天没有重大的中断(即,中断超过5分钟将导致当天的结果无用),结果才有用。
任何想法如何保证应用程序运行在一天中的所有时间没有重大的rest?
第一个想法
坚持以下两个变量(在数据库,文件,无论你想要的地方):
使您的应用程序每隔几秒钟执行以下操作:
每天都要手动检查时间戳 。 当你这样做的时候把它重置为零。
这取决于你想要发生什么。 只是我的头顶几个快速的想法。
如果您想重新启动应用程序 – 您可以创建一个Heartbeat Windows服务,该服务旨在确保进程正在运行。 如果没有运行,可以重新启动进程。
如果你只需要/想验证数据。 让应用程序向数据库报告一个健康状况检查,并将其作为“一直在这里”使用。