Socket
Keith Wansbrough
Keith.Wansbrough@cl.cam.ac.uk
Thu, 09 Aug 2001 16:01:06 +0100
Koen writes:
> accept :: Socket -> IO (Handle, HostName, PortNumber)
>
> Unfortunately, this is a blocking function, which means that
> the whole program blocks when it is waiting for a
> connection.
[..]
> Ideally, I would like to integrate this with the function
> "hSelect" from the Select module.
man 2 accept on my Linux says:
In order to be notified of incoming connections on a
socket, you can use select(2) or poll(2). A readable
event will be delivered when a new connection is attempted
and you may then call accept to get a socket for that con-
nection.
So I imagine if you passed the socket as the first arg to Select.hSelect, you'd get what you want. SocketPrim.socketToHandle claims to do the required conversion.
disclaimer: I haven't tried this.
--KW 8-)
--
Keith Wansbrough <kw217@cl.cam.ac.uk>
http://www.cl.cam.ac.uk/users/kw217/
Cambridge University Computer Laboratory.