sof         2005/07/29 13:21:51 PDT

  Modified files:
    ghc/rts/win32        AsyncIO.c 
  Log:
  win32/AsyncIO.c:onIOComplete(), awaitRequests():
    Avoid completion table overflow through the use of
    a semaphore. Worker threads (the producers) wait for a free
    event slot to appear, the RTS thread (consumer) signal slot
    availability once the completion event has been de-queued and
    processed.
  
    This bug only manifests itself in 'massively concurrent' code
    (>200 threads), where the threads simultaneously engage in IO
    through the async IO layer. conc023 and conc036 in the regression
    test suite are examples of such.
  
  Merge to STABLE.
  
  Revision  Changes    Path
  1.12      +30 -5     fptools/ghc/rts/win32/AsyncIO.c
_______________________________________________
Cvs-ghc mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to