【发布时间】:2015-07-21 02:44:49
【问题描述】:
我有一个 Windows 服务,其中有几个计时器作业。在 OnStart 方法中,我正在启动所有这些计时器。实际上,从服务控制台启动服务需要很长时间,而且大多数情况下,它会报告以下内容: Windows 无法在本地计算机上启动“servicename”服务。 服务没有及时响应启动或控制请求。
我知道我可以创建一个封装其他定时器的定时器,这样我就可以在 OnStart 事件之外启动它们。但是,我正在寻找其他可能的解决方案,因为我不喜欢有一个单独的计时器,除了启动其他进程之外什么都不做。
【问题讨论】:
-
为什么启动计时器需要这么长时间?有数百个吗?你确定你是从 OnStart 回来的吗? (不这样做是该错误消息的常见原因。)
-
不,少于 20 个。我们的自定义计时器类在启动时执行 Web 服务和数据库调用。
-
我知道它正在从 OnStart 返回,因为我之前没有遇到错误。当我再添加 2 个计时器时,就出现了错误。
标签: windows service timer jobs