Coro::Socket - non-blocking socket-io


Coro::Socket - non-blocking socket-io


 use Coro::Socket;


This module implements socket-handles in a coroutine-compatible way, that is, other coroutines can run while reads or writes block on the handle. the Coro::Handle manpage.

$fh = new Coro::Socket param => value, ...
Create a new non-blocking tcp handle and connect to the given host and port. The parameter names and values are mostly the same as in IO::Socket::INET (as ugly as I think they are).

If the host is unreachable or otherwise cannot be connected to this method returns undef. On all other errors ot croak's.

Multihomed is always enabled.

   $fh = new_inet Coro::Socket PeerHost => "localhost", PeerPort => 'finger';

connect, listen, bind, getsockopt, setsockopt, send, recv, peername, sockname, shutdown
Do the same thing as the perl builtins or IO::Socket methods (but return true on EINPROGRESS). Remember that these must be method calls.

($fh, $peername) = $listen_fh->accept
In scalar context, returns the newly accepted socket (or undef) and in list context return the ($fh, $peername) pair (or nothing).


 Marc Lehmann <>

 Coro::Socket - non-blocking socket-io