Mega Code Archive

 
Categories / C# by API / System Threading
 

ThreadPool RegisterWaitForSingleObject

using System; using System.Threading; class MainClass {     private static void EventHandler(object state, bool timedout)      {         Console.WriteLine("timedout:"+timedout);         Console.WriteLine("state:"+state);         Console.WriteLine(DateTime.Now.ToString("HH:mm:ss.ffff"));     }     public static void Main()      {         AutoResetEvent autoEvent = new AutoResetEvent(false);         string state = "AutoResetEvent signaled.";         RegisteredWaitHandle handle = ThreadPool.RegisterWaitForSingleObject(             autoEvent, EventHandler, state, 3000, false);         Thread.Sleep(5000);                  autoEvent.Set();                  Console.WriteLine("Unregistering wait operation.");         handle.Unregister(null);     } }