ALARM |
Alarme |
---|---|
Perl |
Syntaxe
alarm |
alarm seconde |
Paramètres
Nom | Description |
---|---|
seconde | Ce paramètre permet d'indiquer le nombre de secondes. Lorsque se paramètre est omis, la variable «$_» est utilisé. |
Retour
Valeur | Description |
---|---|
0 ou supérieur | Ces valeurs permet d'indiquer le nombre de secondes restantes depuis le dernière appel de la minuterie. |
Description
Cette fonction fixe le nombre de seconde de «SIGALARM». Ainsi, cette fonction offre la possibilité de fixer le «SIGALARM» livré à un processus après le nombre de secondes spécifié.
Remarques
- Variation des secondes en fonction des machines : Sur certaines machines le temps écoulé peut être jusqu'à plus ou moins une seconde, dépendamment comment le matériel offre la possibilité de le mesurer. De plus, l'ordonnancement des processus peut être retarder, effectuant la livraison du signal encore plus loin dans le temps.
- ATTENTION ! Une seule minuterie peut être traiter à la fois. En somme, chaque appel annule le décompte précédent et paramètre avec la valeur 0 peut être fournie afin d'offrir la possibilité d'annuler le décompte précédent sans en commencer un nouveau.
- Si vous avez besoin d'un calcul plus précis du temps, à partir de Perl 5.8, vous devriez plutôt utiliser le module Time::HiRes de CPAN fournit par ualarm().
- Si vous souhaitez utiliser l'alarme de temps d'un appel système, vous aurez besoin d'utiliser la pair de fonction eval/die.
- Vous ne pouvez provoquer l'appel d'alarme après un échec avec $! fixé à la valeur EINTR car le langage de programmation Perl fixe le gestionnaire de signaux pour redémarrer le système d'appel sur certains systèmes.
Exemple
Voici un exemple montrant l'exécution d'une boucle sans fin pendant 3 secondes :
on obtiendra le résultat semblable au suivant :
Démarrage...Attend...
Attend...
Attend...
Attend...
Attend...
Attend...
Attend...
Attend...
Attend...
Attend...
... continue un certain temps dépendamment de la capacité de la machine...
Attend...
Attend...
Attend...
Attend...
Attend...
Attend...
Attend...
Attend...
Attend...
Attend...
Fin!
Voir également
Langage de programmation - Perl - Référence de procédures et fonctions - POSIX::alarm
Langage de programmation - C pour Linux - Fonction alarm
Références
La Bible Micro Application HTML & Développement Web, Stefan Munz, Wolfgang Nefzger, 2003, ISBN: 2-7429-2898-7, page 1188
Dernière mise à jour : Dimanche, le 22 février 2015