|Important||This document may not represent best practices for current development, links to downloads and other resources may no longer be valid. Current recommended version can be found here. ArchiveDisclaimer|
Timers Technology Sample
This sample demonstrates the uses of timers in the common language runtime. The sample uses the Timer class to generate a periodic callback to a method. The sample creates a Timer and passes to it a delegate. When the Timer fires, the delegate is invoked, and a static method is called asynchronously by a worker thread in the thread pool.
For more information about using the samples, see the following topics:
To build the sample using the command prompt
Open the Command Prompt window and navigate to one of the language-specific subdirectories for the sample.
Type msbuild TimersCS.sln or msbuild TimersVB.sln, depending on your choice of programming language, at the command line.
To build the sample using Visual Studio
Open Windows Explorer and navigate to one of the language-specific subdirectories for the sample.
Double-click the icon for TimersCS.sln or TimersVB.sln, depending on your choice of programming language, to open the file in Visual Studio.
On the Build menu, click Build Solution.
To run the sample
Navigate to the directory that contains the built executable, using the command prompt.
Type TimedCallback.exe from the command line.
This sample builds a console application. You must launch it from a console window in order to view its output.
The following bullets briefly describe the technologies and classes used by this sample.
TimerUsed to create periodic or singleton timers for relative or absolute times. The sample creates a periodic timer that invokes a delegate every two seconds until the application exits.
Thread Pools Although the ThreadPool class is not explicitly referenced by this sample, the Timer class uses the thread pool managed by the common language runtime to invoke delegates asynchronously in response to timer events. The timer in this sample uses a worker thread in the pool every two seconds.
TimerCallbackUsed to create a typesafe callback method for the timer.
For more information about using timers with asynchronous method calls, see the comments in the source code files.