繁体   English   中英

如何设置我的服务器exe继续运行

[英]How to setup my server exe keep running

我有一个现在部署的服务器进程,我想让我的服务器保持运行。 如果该进程通过某种方式崩溃,无论是某种异常还是任何其他技术流程,那么我需要重新启动它。

为此,我创建了另一个进程,在进程列表中继续检查(例如,每2分钟)此特定进程名称,如果没有找到,它将启动该进程。

我已经实现了这个解决方案,但我知道这不是一个好主意,我相信这项工作必须有一些更好的想法。 你能帮助我最好的方法,还是建议一些更好的方法?

出于某些限制,我无法将我的服务器进程部署为Windows服务,它是一个Windows窗体应用程序。

谢谢。

您没有发布任何代码,但您提到“每隔两分钟检查进程列表”。 我认为更好的解决方案是让您的监督程序流程成为父流程。 它会调用CreateProcess来将EXE作为子进程启动。 然后在子进程句柄上执行WaitForSingleObject。 一旦WaitForSingleObject返回(表示子进程已退出),它就会重新启动它。

CreateProcess和WFSO的.Net等价物是Process.StartProcess.WaitForExit

如你所说,解决方案远非最佳。 Windows服务已自动重启。

在你的情况下,我会从Windows任务调度程序启动你的看门狗进程,以避免问题,如果你的看门狗死了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM