我面临的情况是,我启动了Windows服务,并且在某些时候,出现了一些数据库连接问题(由于某些网络问题)。当Windows服务已经运行时,Topshelf再次调用Start
方法&它再次调用Stop
之前没有调用Start
方法(我通过阅读日志来了解这个事情,因为我在"开始"方法中记录了一些文本)
我不希望Topshelf多次调用Start方法。 任何解决方案?
答案 0 :(得分:1)
因此Topshelf只应在服务控制管理器请求启动时调用WhenStarted
的委托。如果您看到开始被多次调用,您的服务是否崩溃并重新启动?您是否以某种方式运行了多个服务实例?您确定被WhenStarted
代表被调用了吗?