Come posso catturare e gestire un segnale in Perl?
Domanda
Esiste un modo per intercettare un errore e uscire con grazia da Perl? Sto lavorando a uno script che potrebbe non riuscire a causa di un evento SIG dal sistema operativo o altre applicazioni in esecuzione sul mio server. Desidero intercettare questo evento, visualizzare l'errore ed uscire dopo aver chiuso tutti i file e gli altri attributi che ho aperto durante l'esecuzione dello script.
Soluzione
Utilizzare l'hash% SIG per installare i gestori di segnale. Esempio:
$ SIG {INT} = 'SigIntHandler';
Dove SigIntHandler è un sub che si scrive per essere chiamato quando viene catturato un interrupt.
Altri suggerimenti
Vedi perldoc sigtrap .
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow