Portál AbcLinuxu, 5. května 2025 23:16
use threads;
use IO::Socket;
use DBI;
$SIG{CHLD} = 'IGNORE';
$| = 1;
my $server = new IO::Socket::INET (PF_INET, SOCK_DGRAM, getprotobyname("udp")); bind(UDP, sockaddr_in(8000, INADDR_ANY));(UDP);
#my $server = new IO::Socket::INET ( LocalAddr => 'GBOT', LocalPort => 8000, Proto => 'tcp', Listen => 5, ReuseAddr => 1 );
To první. Na UDP socketu se žádný listen() nedělá, protože to není proudový protokol, který by dělal spojení.
Každopádně ten kód máš dost zmatený. Třeba kde se vzalo UDP
a co pak děláš se $server
? Taky doporučuji hlídat návratové hodnoty jednotlivých volání. Podívej se do manuálu perlipc na slovo SOCK_DGRAM, abys načerpal inspiraci.
use IO::Socket::INET; $server = new IO::Socket::INET ( LocalPort => '8000', Proto => 'udp', ) or die "ERROR in Socket Creation : $!\n";
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.