<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">On 09/18/2014 10:32 AM, Xiangrong Fang
      wrote:<br>
    </div>
    <blockquote
cite="mid:CAP93jB3gHocRpmom_1-M5eTmsFF+B7jcJTGpX_h8YSsw4gc1Tw@mail.gmail.com"
      type="cite">
      <div dir="ltr"><br>
        <div class="gmail_extra">
          <div class="gmail_quote">
            <div>
              <div class="gmail_default" style="font-family:'courier
                new',monospace;display:inline">​I don't quite understand
                the logic or difference between critical section ​</div>
               
              <div class="gmail_default" style="font-family:'courier
                new',monospace;display:inline">​and events.<br>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
    <br>
    Sorry for my previous rude reply.<br>
    <br>
    Sven made me know that by "event" you did not mean an object pascal
    language "Event" (i.e. a callback), but a "TEvent instance". <br>
    <br>
    Here, of course you can use both a TCriticalSection instance (i.e. a
    Mutex) as a TEvent Instance (i.e. a semaphore) for thread
    synchronizing.<br>
    <br>
    (It's a shame that the creators of our brand of the Object Pascal
    Language once chose to invent new notions for commonly use concepts
    (Callback -> Event, Mutex -> CriticalSection, TEvent ->
    Semaphore, array of Boolean -> Set, ("object" for a kind of class
    (i.e. a type), instead of an instance of same is not used any
    more...)<br>
    <br>
    -Michael<br>
  </body>
</html>