ServiceController.WaitForStatus Method (ServiceControllerStatus, TimeSpan)


Waits for the service to reach the specified status or for the specified time-out to expire.

Namespace:   System.ServiceProcess
Assembly:  System.ServiceProcess (in System.ServiceProcess.dll)

public void WaitForStatus(
	ServiceControllerStatus desiredStatus,
	TimeSpan timeout


Type: System.ServiceProcess.ServiceControllerStatus

The status to wait for.

Type: System.TimeSpan

A TimeSpan object specifying the amount of time to wait for the service to reach the specified status.

Exception Condition

The desiredStatus parameter is not any of the values defined in the ServiceControllerStatus enumeration.


The value specified for the timeout parameter expires.

Use WaitForStatus to suspend an application's processing until the service has reached the required status.


The WaitForStatus method waits approximately 250 milliseconds between each status check. WaitForStatus cannot detect the case of the observed service changing to the desiredStatus and then immediately to another status in that interval.

.NET Framework
Available since 1.1
Return to top