OT - advice on async I/O pls

Siddhesh Poyarekar spoyarek at redhat.com
Mon Apr 6 10:51:47 UTC 2009


On Mon, 2009-04-06 at 11:29 +0100, T. Horsnell wrote:
> I'm using sendto and rcvfrom to handle a UDP connection to a
> remote host. I send a msg using sendto, and then wait for
> a reply using recvfrom, but I would like to be able to rapidly
> timeout the rcvfrom if the remote host is down.
> 
> The async I/O set of commands aio_* offer what looks like
> the perfect solution, but they require that I use aio_read
> and aio_write (equivalent to read(2) and write(2) ) rather
> than sendto/recvfrom.
> 
> I'd rather not sit in a loop waiting for a reply with
> non-blocking I/O enabled. I'd much prefer to use blocking
> I/O and have the recvfom come back to me either when the
> input has completed, or it has timed out.
> 

Check out GIOChannels in glib2:

http://library.gnome.org/devel/glib/stable/glib-IO-Channels.html

Siddhesh

--
http://siddhesh.in





More information about the fedora-list mailing list