.net 出现故障时重新启动Windows服务

.net 出现故障时重新启动Windows服务,.net,windows-services,.net,Windows Services,我们有一个用.net编写的windows服务,它承载WCF服务。我的问题是,是否可以在出现任何故障时监视并重新启动服务,在另一个世界中,我希望在出现任何故障时自动重新启动我的服务。非常感谢启动/控制面板/服务/右键单击您的服务/属性/第一次故障:重新启动服务/第二次故障:重新启动服务/后续故障:重新启动服务 应该这样做。启动/控制面板/服务/右键单击服务/属性/第一次故障:重新启动服务/第二次故障:重新启动服务/后续故障:重新启动服务 应该这样做。进入操作系统中的服务管理器,右键单击服务并选择属

我们有一个用.net编写的windows服务,它承载WCF服务。我的问题是,是否可以在出现任何故障时监视并重新启动服务,在另一个世界中,我希望在出现任何故障时自动重新启动我的服务。
非常感谢

启动/控制面板/服务/右键单击您的服务/属性/第一次故障:重新启动服务/第二次故障:重新启动服务/后续故障:重新启动服务


应该这样做。

启动/控制面板/服务/右键单击服务/属性/第一次故障:重新启动服务/第二次故障:重新启动服务/后续故障:重新启动服务


应该这样做。

进入操作系统中的服务管理器,右键单击服务并选择属性。在这里,您将找到一个恢复选项卡,可用于定义崩溃时的行为。

进入操作系统中的服务管理器,右键单击您的服务并选择属性。在那里,您可以找到一个恢复选项卡,它允许您定义崩溃时的行为。

您可以编写另一个服务,如监视程序服务,它将监视此核心服务并在停止时重新启动它。但是,如果停止watcher服务,则无法执行任何操作。

您可以编写另一个服务,如监视此核心服务的watcher服务,并在停止时重新启动它。但是,如果停止watcher服务,则无法执行任何操作。

我认为您应该考虑服务的设计。它应该是wcf进程的主机。您可以制作3个线程:

  • 主线程(仅在v致命错误时停止)

  • ExceptionHandler线程(处理“预期”的异常,进行日志记录,并处理WCFHost线程)

  • WCFHost线程(承载WCF服务,可以随时终止,ExceptionHandler现在可以处理这个问题。)


    • 我认为您应该考虑一下服务的设计。它应该是wcf进程的主机。您可以制作3个线程:

      • 主线程(仅在v致命错误时停止)

      • ExceptionHandler线程(处理“预期”的异常,进行日志记录,并处理WCFHost线程)

      • WCFHost线程(承载WCF服务,可以随时终止,ExceptionHandler现在可以处理这个问题。)


      在单个windows服务中,可以有多个WCF服务。
      您可以为单个WCF服务处理ServiceHost类的故障事件并重新初始化它。

      在单个windows服务中,可以有多个WCF服务。
      您可以为单个WCF服务处理ServiceHost类的故障事件并重新初始化它。

      我们可以在窗口服务中通过代码完成吗?Yea@Sumeet,您可以。因为您的服务处于故障状态,所以您应该有另一个服务来执行此操作。一个很好的类ServiceController()可以帮助您,我们可以通过代码在窗口服务中完成吗?是的@Sumeet,您可以。因为您的服务处于故障状态,所以您应该有另一个服务来执行此操作。一个很好的类ServiceController()可以帮助您在服务代码中进行设置。在客户端部署服务后。。我不想让他手动配置上面的设置。我有没有办法在服务代码中设置这个设置。在客户端部署服务后。。我不想让他手动配置上面的设置。