patch applied (packages/base): Fix #2363: getChar cannot be interrupted with -threaded

Simon Marlow simonmarhaskell at gmail.com
Thu Jun 19 10:22:57 EDT 2008


Thu Jun 19 07:19:11 PDT 2008  Simon Marlow <marlowsd at gmail.com>
  * Fix #2363: getChar cannot be interrupted with -threaded
  Now in -threaded mode, instead of just making a blocking call to
  read(), we call select() first to make sure the read() won't block,
  and if it would block, then we use threadWaitRead.
  
  The idea is that the current thread must be interruptible while it
  blocks.  This is a little slower than before, but the overhead only
  applies to blocking Handles (stdin/stdout/stderr, and those created by
  System.Process).

    M ./GHC/Handle.hs -28 +41

View patch online:
http://darcs.haskell.org/packages/base/_darcs/patches/20080619141911-12142-7a3b1a7d6f4004e890aefa5f8393acba090e9c0a.gz


More information about the Cvs-libraries mailing list