停止服务或杀死他的过程?

时间:2013-09-18 07:58:19

标签: c# powershell service process

我找不到任何明确的答案:

  • 使用停止操作停止服务

  • 杀死进程以使其停止?

杀死进程比停止服务更快,但我不知道它是否会造成一些问题?

2 个答案:

答案 0 :(得分:6)

你想自然地去睡觉吗?或者你宁愿有人打你的脸并把你打倒? :)

停止服务允许它以有意义的方式关闭,也许写一些日志条目并做各种事情。

杀死进程不允许任何此类进程。 Blam,你死了。很优雅。

答案 1 :(得分:1)

流程与服务之间的关系不保证为1:1。也就是说,有些进程托管多个服务 - 最突出的是svchost.exe,它不仅作为多个实例存在,而且每个实例都承载多个服务。

虽然svchost.exe是Windows的一个组件,但第三方供应商提供的服务也是如此。例如,在.NET中,您可以看到ServiceBase.Run()方法甚至接受多个ServiceBase实例(即服务实现)来启动。

因此,如果您终止托管服务的进程,您可以终止更多的服务而不仅仅是您想到的服务。小心。