|
Listing 5-20 extracted from chapter
Processes, threads and synchronization
Listing 5-19< > Listing 5-21
This listing can be compiled with the command line: csc.exe /target:exe Example_5_20.cs Errors: 0 Warnings: 0
Example_5_20.cs
using System.Timers;
class Program {
static Timer Timer1 = new Timer();
static Timer Timer2 = new Timer();
static void Main() {
Timer1.Interval = 1000; // Period = 1 second.
Timer1.Elapsed += new ElapsedEventHandler( PeriodicTaskHandler );
Timer2.Interval = 2000; // Period = 2 seconds.
Timer2.Elapsed += new ElapsedEventHandler( PeriodicTaskHandler );
Timer2.Elapsed += new ElapsedEventHandler( PeriodicTaskHandler );
Timer1.Start(); Timer2.Start();
System.Threading.Thread.Sleep( 5000 ); // Sleep 5 seconds.
Timer1.Stop(); Timer2.Stop();
}
static void PeriodicTaskHandler( object sender, ElapsedEventArgs e ) {
string str = ( sender == Timer1 ) ? "Timer1 " : "Timer2 ";
str += e.SignalTime.ToLongTimeString();
System.Console.WriteLine( str );
}
}
Copyright Patrick Smacchia 2006 2007
|