Fonction d'écoute Perl
La description
Cette fonction configure la prise réseau SOCKET pour écouter les connexions réseau entrantes. Définit la longueur de la file d'attente de connexion entrante sur EXPR. Vous pouvez envisager d'utiliser le module IO :: Socket, qui fournit un moyen beaucoup plus simple de créer et d'écouter les sockets réseau.
Syntaxe
Voici la syntaxe simple de cette fonction -
listen SOCKET, EXPR
Valeur de retour
Cette fonction renvoie 0 en cas d'échec et 1 en cas de succès.
Exemple
Voici l'exemple de code montrant son utilisation de base, c'est un exemple de serveur avec l'implémentation de socket Perl Socket
Prise Perl#!/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;
}