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;
}