zoukankan      html  css  js  c++  java
  • windows service自动重启服务

    服务一般都能正常的运行,但有时候也会有一些假死现象,比如公司有一考勤服务就因为依赖于硬件厂家的api,

    但厂家api运行一段时间后会默名的假死,引起整个服务假死,因为这一假死现象具有不确定性,所以不太可能

    看到假死后手动去进行启动。

    目前本人知道的有两种方法解决这种情况:

    1.写另一个服务,对此当前服务进行监听【需要一些共同数据来判断是否为假死】,一但发现假死,进行重新启动
    2.利用服务本身进行重启。

       a.打开 控制面板-》管理工具-》服务,找到需要自动重启服务,点击右键-》属性,点击 恢复 选项卡, 将 ”第一次失败(F)",”第二次失败(S)",”后续失败(U)"都设定为"重新启动服务",点击确定,如图:
        
       b.服务程序中开一线程,进行假死判断, 一旦发现假死,执行 Environment.Exit(1); 这样服务在退出后会重新进行启动
    注:此方法前提条件是判断假死的线程还能正常运行。

  • 相关阅读:
    GDB的Breakpoint, Watchpoint和Catchpoint
    sed初学
    比较两个文本不同的行/比较两个文本相同的行
    sprintf()函数基本用法
    vim不用鼠标复制粘贴
    SQL基础-语法
    SQL基础-简介
    XPath学习笔记
    jQuery选择器
    Ubuntu常用命令
  • 原文地址:https://www.cnblogs.com/ywkpl/p/3859349.html
Copyright © 2011-2022 走看看