我对另一个关于 Windows 服务看门狗计时器的问题的答案非常感兴趣(请参阅此处)。那个回答说:
我还使用了在另一个线程中运行的内部看门狗系统。该线程查看主线程的活动,如日志输出或切换事件。如果未看到该活动,则认为该服务已挂起,我将关闭该服务。
在这种情况下,您可以将 Windows 配置为自动重新启动已停止的服务,这可能会清除问题(只要它不是内部逻辑错误)。
我使用的服务也有写入日志的文本日志。除了即将“睡一会儿”的服务外,我还会记录下一次醒来的时间。我使用 MTAIL 来查看日志以获取输出。”
任何人都可以提供一些示例代码如何使用在另一个线程中运行的内部看门狗,因为我目前有一个任务来开发一个 Windows 服务,如果它失败、挂断等,它将能够自动重启。
我真的很感谢你的帮助。