Timer Constructor (TimerCallback, Object, TimeSpan, TimeSpan)

[This documentation is for preview only, and is subject to change in later releases. Blank topics are included as placeholders.]

Initializes a new instance of the Timer class, using TimeSpan values to measure time intervals.

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

public Timer(
	TimerCallback callback,
	Object state,
	TimeSpan dueTime,
	TimeSpan period


Type: System.Threading..::..TimerCallback
A TimerCallback delegate representing a method to be executed.
Type: System..::..Object
An object containing information to be used by the callback method, or nullNothingnullptrunita null reference (Nothing in Visual Basic).
Type: System..::..TimeSpan
The TimeSpan representing the amount of time to delay before the callback parameter invokes its methods. Specify negative one (-1) milliseconds to prevent the timer from starting. Specify zero (0) to start the timer immediately.
Type: System..::..TimeSpan
The time interval between invocations of the methods referenced by callback. Specify negative one (-1) milliseconds to disable periodic signaling.

The delegate specified by the callback parameter is invoked once after dueTime elapses, and thereafter each time the period time interval elapses.

If dueTime is zero (0), callback is invoked immediately. If dueTime is negative one (-1) milliseconds, callback is not invoked; the timer is disabled, but can be re-enabled by calling the Change method.

If period is zero (0) or negative one (-1) milliseconds and dueTime is positive, callback is invoked once; the periodic behavior of the timer is disabled, but can be re-enabled using the Change method.

The method specified for callback should be reentrant, because it is called on ThreadPool threads. The method can be executed simultaneously on two thread pool threads if the timer interval is less than the time required to execute the method, or if all thread pool threads are in use and the method is queued multiple times.