
On Sun, Dec 12, 2010 at 6:37 PM, Mathijs Kwik
Hi all,
I read the paper about the new ghc7 event handling IO manager goodies. This is all very exciting stuff. I didn't know GHC's RTS had these smart async-IO facilities. The paper pointed me at threadWaitRead/threadWaitWrite. While very nice the way they are, I would also like to be able to wait on more than 1 fd until 1 of them becomes available.
Would it be possible to create this functionality myself? Or do I need to request it and wait for a new GHC? It looks like the functionality I need is in System/Event/Thread. I think I can manage to write my own version of those functions which then loop through a list of fds, but the original file imports System/Event/Manager (registerFd, unregisterFd_) which I can't do because it's a hidden module. Is there a way around this?
Can you do it with forkIO? That is, have two light-weight threads, each waiting on a different fd, which perform the same action when one of them wakes up. Maybe that would become too hard to synchronize the threads together, but it might be the first thing to try before delving into GHC internals. Take care, Antoine
Thanks, Mathijs
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe