Nella pagina perdoc Socket, usano filehandle globale per socket. Ma se creo un socket in una subroutine chiamata da processi figli, è meglio usare il filehandle lessicale ancora usando Socket?perl (buona pratica): filehandle lessicale per socket
come questo:
use strict;
use Socket;
sub sendData
{
my $proto = getprotobyname('tcp');
my $socket;
socket($socket, PF_INET, SOCK_STREAM, $proto);
...
close($socket)
}
invece di:
sub sendData
{
my $proto = getprotobyname('tcp');
socket(SOCKET, PF_INET, SOCK_STREAM, $proto);
...
close(SOCKET)
}
Sembra essere ok, ma non so se si tratta di una pratica migliore o del tutto inutile ...
Grazie
In realtà, questo è stato corretto in [versioni recenti] (https://metacpan.org/module/Socket) di Socket –