> Why doesn't Socket.accept call threadWaitRead before entering the > C-call (which will block the entire RTS when used in conjunction > with Concurrent)? Is there any design decision involved? The call doesn't block, because the socket is set to non-blocking mode. Or have you perhaps observed different behaviour? It works here. Cheers, Simon