Perl:同步套接字连接

时间:2015-02-11 07:25:30

标签: perl sockets

我可以同时连接到主机阵列吗? 当我尝试Socket

use Socket;
socket($s, AF_INET, SOCK_STREAM, getprotobyname('tcp'));
my $addr = sockaddr_in(80, inet_aton("192.168.1.1"));
connect($s, $addr);

或IO :: Socket

use IO::Socket;
my $s = IO::Socket::INET->new(PeerAddr => $ip , PeerPort => 80 , Proto => 'tcp' , Timeout => 5);

除了分叉和线程之外还有其他方法可以避免等待建立连接吗? 最终的预期结果是打开的套接字句柄数组。

1 个答案:

答案 0 :(得分:1)

如果要进入低级别,可以使用内置的select()函数来确定哪些套接字是可读/可写的。还有IO::Socket可以添加更方便的API。

但更好的答案是使用其中一个事件模块,如AnyEvent