PERL:如何避免套接字的WHILE?
我想编写基于套接字的客户机-服务器高负载工具。 我有共同的代码:PERL:如何避免套接字的WHILE?,perl,sockets,Perl,Sockets,我想编写基于套接字的客户机-服务器高负载工具。 我有共同的代码: $buffsize = 1024; my $sock = new IO::Socket::INET( PeerAddr => $host, PeerPort => $port, Proto => 'tcp', Timeout => 5, ); connect($sock, $paddr); my $a = send($sock, $data, $b
$buffsize = 1024;
my $sock = new IO::Socket::INET(
PeerAddr => $host,
PeerPort => $port,
Proto => 'tcp',
Timeout => 5,
);
connect($sock, $paddr);
my $a = send($sock, $data, $buffsize);
my $in;
$content = "";
while (1){
my $count = sysread($sock, $in, $buffsize);
$content .= $in;
}
}
close($sock);
但当我使用fork()时,这段代码会加载1000倍的CPU 100%。如何避免WHILE()优化源代码
谢谢 看看面向事件(例如非阻塞)的编程,如with或类似的