Name

Timer

Synopsis

This class can execute actions on a periodic basis. Actions can be performed once or multiple times. The constructor takes a TimerCallback delegate, a state object, a due time, and a period. Both due time and period are measured in milliseconds. Use the state argument to hold state information between delegate calls, or pass in null if you don’t have any state to maintain. After the timer is created, it begins counting down until due time has expired, and then it invokes the delegate. The period is the amount of time to wait between delegate invocations before resuming the countdown again.

If the period is zero, the timer executes only once. If either due time or period are negative (and not equal to Timeout.Infinite), the constructor fails, throwing an System.ArgumentOutOfRangeException. Change( ) changes the due time and period after the timer is created. Specify a due time of Timeout.Infinite to halt the timer. An Infinite period prevents the timer from being raised repeatedly.

public sealed class Timer : MarshalByRefObject, IDisposable {
// Public Constructors
   public Timer(TimerCallback callback, object state, int dueTime, int period);
   public Timer(TimerCallback callback, object state, long dueTime, long period);
   public Timer(TimerCallback callback, object state, TimeSpan dueTime, TimeSpan period);
   public Timer(TimerCallback callback, object state, uint dueTime, uint period);
// Public Instance Methods
   public bool Change(int dueTime, int period); public bool ...

Get C# in a Nutshell, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.