C#, System.Timers.Timer, run every 15min in sync with system clock -


how system.timers.timer trigger elapsed events every 15 mins in sync system clock? in other words, want trigger @ xx:00, xx:15, xx:30, xx:45 (where xx means hour)

you let elapse every second , check whether current time 00, 15, 30 or 45 , forward event.

a first idea be:

private static system.timers.timer atimer; private static system.datetime _last;  public static void main() {     atimer = new system.timers.timer(10000);      atimer.elapsed += new elapsedeventhandler(ontimedevent);      atimer.interval = 1000;     atimer.enabled = true;      console.writeline("press enter key exit program.");     console.readline(); }  private static void ontimedevent(object source, elapsedeventargs e) {     datetime time =          new datetime( 1,1,1, datetime.now.hours, datetime.now.minute );      if( time.minute==0 ||time.minute==15 || time.minute==30 || time.minute==45 )     {         // avoid multiple notifications same quarter.         if ( _last==datetime.minvalue || _last!=time )         {             _last = time;              // further processing.             doprocessing();         }     } } 

(example based on this msdn documentation)


Comments

Popular posts from this blog

java - Play! framework 2.0: How to display multiple image? -

gmail - Is there any documentation for read-only access to the Google Contacts API? -

php - Controller/JToolBar not working in Joomla 2.5 -