G'day all. Quoting Paul Graunke <[EMAIL PROTECTED]>:
> Right, cooperative multitasking is faster than preemptive multitasking. That's often the case, but it depends. Some OSes have very, very fast thread primitives. It also depends on the application, as I noted, because what you lose in system call overhead you can win back elsewhere. > One technique is to have several OS threads to make use of CPUs and > do your own scheduling inside that. That certainly works. The "thread pool" approach is the simplest incarnation of this. > Is there a problem with having a system thread do the IO based on > pulling events from a channel and pushing the results back to a > channel? You can push the result channel/mvar through the request > channel along with the request. Unfortunately, I can't think of a way to make this work with memory mapped files, which are pretty important these days. Cheers, Andrew Bromage _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell