Funzione di ascolto Perl
Descrizione
Questa funzione configura la presa di rete SOCKET per l'ascolto delle connessioni di rete in entrata. Imposta la lunghezza della coda di connessione in entrata su EXPR. Potresti prendere in considerazione l'utilizzo del modulo IO :: Socket, che fornisce un modo molto più semplice di creare e ascoltare i socket di rete.
Sintassi
Di seguito è riportata la semplice sintassi per questa funzione:
listen SOCKET, EXPR
Valore di ritorno
Questa funzione restituisce 0 in caso di errore e 1 in caso di successo.
Esempio
Di seguito è riportato il codice di esempio che mostra il suo utilizzo di base, questo è un esempio di server insieme all'implementazione del socket Perl Socket -
Perl Socket#!/usr/bin/perl -w
# server.pl
#--------------------
use strict;
use Socket;
# use port 7890 as default
my $port = shift || 7890;
my $proto = getprotobyname('tcp');
# create a socket, make it reusable
socket(SOCKET, PF_INET, SOCK_STREAM, $proto)
or die "Can't open socket $!\n";
setsockopt(SOCKET, SOL_SOCKET, SO_REUSEADDR, 1)
or die "Can't set socket option to SO_REUSEADDR $!\n";
# bind to a port, then listen
bind( SOCKET, pack( 'Sn4x8', AF_INET, $port, "\0\0\0\0" ))
or die "Can't bind to port $port! \n";
listen(SOCKET, 5) or die "listen: $!";
print "SERVER started on port $port\n";
# accepting a connection
my $client_addr;
while ($client_addr = accept(NET_SOCKET, SOCKET)) {
# send them a message, close connection
print NEW_SOCKET "Smile from the server";
close NEW_SOCKET;
}