-1

我找不到任何明确的答案来说明两者之间的区别:

  • 通过停止操作停止服务

  • 杀死一个进程使其停止?

杀死一个进程比停止服务快,但不知道会不会产生一些问题?

4

2 回答 2

6

你想自然地睡觉,还是宁愿有人打你的脸把你打晕?:)

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

杀死一个进程不允许这样做。布拉姆,你死了。算不上优雅。

于 2013-09-18T08:01:57.430 回答
2

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

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

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

于 2013-09-18T08:05:31.917 回答