【发布时间】:2011-07-25 07:59:44
【问题描述】:
我用 c# 编写了一个服务,它启动在后台运行的不同的其他(子)进程。如何以优雅的方式关闭进程? Process.kill() 不是一个选项,Process.CloseMainWindow() 不起作用,因为子进程没有可见窗口(也不应该有)。
坦克为您提供帮助。
【问题讨论】:
-
欢迎来到 SO Nathon。子进程也用 C# 编写吗?
-
子进程在完成进程后不会自行关闭吗?
-
为什么父进程必须关闭它们?一旦完成执行,进程将干净地关闭。如果它还没有完成执行,我不相信有任何方法可以“干净地”关闭它。
-
除非你走 IPC 路线,让你的父进程发出一个子进程应该退出的信号,然后让子进程优雅地退出。
-
该进程是 wcf 网关的某种数据库,应该一直运行到用户想要结束它。我想到了一些可以在孩子身上调用的内置事件。像 CloseMainWindow()
标签: c# .net process windows-services