Ios IO::Socket::INET返回一个空套接字
这是我的代码:Ios IO::Socket::INET返回一个空套接字,ios,perl,sockets,Ios,Perl,Sockets,这是我的代码: my $server_socket = new IO::Socket::INET ( LocalPort => 8378, Type => SOCK_STREAM, Listen => $SOMAXCONN, Proto => 'tcp', Reus
my $server_socket = new IO::Socket::INET
(
LocalPort => 8378,
Type => SOCK_STREAM,
Listen => $SOMAXCONN,
Proto => 'tcp',
Reuse => 1
) || die "$!\n";
$serverName = $ENV{COMPUTERNAME};
$socketPortNr = 8378;
$clientSocket = new IO::Socket::INET (PeerAddr => $serverName,
PeerPort => $socketPortNr,
Proto => 'tcp');
但是$clientSocket
是空的
空
$clientSocket
的原因是什么?没有必要猜测。如其文档中的示例所示,IO::Socket::INET->new
在失败时在$@
中放置一条错误消息
my $client_socket = new IO::Socket::INET->new(
...
)
or die("Can't create client socket: $@\n");
(
$!
也已设置,尽管它提供的信息并不总是那么精确。)始终在代码中使用使用警告和使用严格的。当我使用严格时,变量初始化出现错误,脚本停止。请首先声明所有变量。同一脚本在Windows 7 ultimate计算机上成功运行。我在Windows 7 enterprise中面临问题。所以我认为严格使用不会有问题。my$sock=IO::Socket::INET->new(…)或die$代码>。<代码>$代码>将告诉您出了什么问题