Windows Dev Center

WaitHandle.WaitOne Method (TimeSpan)

Blocks the current thread until the current instance receives a signal, using a TimeSpan to specify the time interval.

Namespace:  System.Threading
Assembly:  mscorlib (in mscorlib.dll)

public virtual bool WaitOne(
	TimeSpan timeout


Type: System.TimeSpan
A TimeSpan that represents the number of milliseconds to wait, or a TimeSpan that represents -1 milliseconds to wait indefinitely.

Return Value

Type: System.Boolean
true if the current instance receives a signal; otherwise, false.


The current instance has already been disposed.


timeout is a negative number other than -1 milliseconds, which represents an infinite time-out.


timeout is greater than Int32.MaxValue.

If timeout is zero, the method does not block. It tests the state of the wait handle and returns immediately.

The caller of this method blocks until the current instance receives a signal or a time-out occurs. Use this method to block until a WaitHandle receives a signal from another thread, such as the signal that is generated when an asynchronous operation completes. For more information, see the IAsyncResult interface.

Override this method to customize the behavior of derived classes.

The maximum value for timeout is Int32.MaxValue.

Windows Phone OS

Supported in: 8.1, 8.0, 7.1, 7.0

Windows Phone

© 2015 Microsoft