0

我正在使用 ServiceController 来获取服务列表及其状态。

下面是示例代码:

var scServices = ServiceController.GetServices(machineIPOrName).ToList();
var scservice = scServices.FirstOrDefault(i => i.ServiceName.ToUpper().Equals(serviceName.ToUpper()));

目前,如果服务正在运行、已停止、StartPending、StopPending、已暂停等,它会返回。但有时即使服务正在运行。它将处于挂起/敲击状态,它将无法正常工作。我如何确定服务是被触发还是处于挂起状态?

4

1 回答 1

0

如果您不知道该服务该做什么,则无法检查该服务是否真的在做它的工作。如果您自己实现了该服务,那么您可以实现某种接口来检查它是否真的在运行,而不是处于某种暂停/无限循环状态。

于 2016-10-24T12:43:02.697 回答