title: new AutoResetEvent (true) Usages in C#?
body: <p>I was wondering , </p>
  
  <p><em>Why</em> would I ever want to pass a <code>true</code> in the ctor of <code>AutoResetEvent</code>  ? </p>
  
  <p>I create  a <code>waitHandle</code> so that anyone who will call <code>WaitOne()</code> will actually <strong>wait</strong>.</p>
  
  <p>If I instance it with a <code>true</code> , it will be as if it was immediatly signaled  - which is like a normal flow without waiting.</p>
  
  <pre><code>  EventWaitHandle _waitHandle = new AutoResetEvent (false);
  
  void Main()
  {
    new Thread (Waiter).Start();
      Thread.Sleep (1000);                   
      _waitHandle.Set();                    
  
  Console.ReadLine();
  }
    void Waiter()
    {
      Console.WriteLine ("AAA");
      _waitHandle.WaitOne();                 
      Console.WriteLine ("BBBB");
    }
  </code></pre>
  
  <p>output : </p>
  
  <pre><code>AAA...(delay)...BBB
  </code></pre>
  
  <p>changing to :  <code>EventWaitHandle _waitHandle = new AutoResetEvent (true);</code> and the output will be : </p>
  
  <pre><code>AAABBB
  </code></pre>
  
  <p><strong>Question</strong> : </p>
  
  <ul>
  <li>Why would I ever want to do this ?  ( passing <code>true</code>) ? </li>
  </ul>