Perl Socket通信
use IO::Socket::INET;use Data::Dumper;
my $remote_host='localhost';
my $remote_port=7899;
my $socket = IO::Socket::INET->new(PeerAddr => $remote_host,
PeerPort=> $remote_port,
Proto => "tcp",
Type => SOCK_STREAM)
or die "Couldn't connect to $remote_host:$remote_port: $!\n";
while(1)
{
my $data = eval
{
local $SIG{ALRM}=sub {die "timeout\n";};
alarm(10);
print "please input the number select the thing you want\n";
my $data = ;
return $data;
};
alarm(0);
&HeartBreak($socket);
my $return;
$socket->recv($return,1024,0);
print "return : $return";
last if($return =~ m/quit/);
}
close($socket);
#心跳任务
sub HeartBreak
{
my $socket = shift;
print $socket localtime()."HeartBeat\n";
}
页:
[1]