3.5 atexit -- Gestori d'uscita

Nuovo nella versione 2.0.

Il modulo atexit definisce una singola funzione per registrare azioni di pulizia. Le funzioni così registrate vengono automaticamente eseguite sulla normale terminazione dell'interprete.

Nota: le funzioni registrate tramite questo modulo non vengono chiamate quando il programma viene ucciso da un segnale, quando viene rilevato un errore fatale di Python o quando viene chiamato os._exit().

Questa è una interfaccia alternativa per la funzionalità fornita dalla variabile sys.exitfunc.

Nota: questo modulo è improbabile che lavori correttamente quando usato con altri codici che impostano sys.exitfunc. In particolare altri moduli di Python sono liberi di usare atexit senza la conoscenza del programmatore. Gli autori che utilizzano sys.exitfunc dovrebbero invece convertire i loro codici per poter utilizzare atexit. Il modo più semplice per convertire un codice che imposti sys.exitfunc è quello di importare atexit e registrare la funzione che veniva limitata da sys.exitfunc.

register( func[, *args[, **kargs]])
Registra func come una funzione da eseguire alla terminazione del programma. Ciascun argomento facoltativo che viene passato a func deve venire passato come argomento di register().

Quando viene terminato normalmente il programma (per esempio, se viene chiamata sys.exit() oppure viene completata l'esecuzione del modulo principale), tutte le funzioni registrate vengono chiamate nell'ordine, ultima entrata, prima ad uscire. La consuetudine è che i moduli di livello più basso vengano normalmente importati prima di quelli di livello più alto e quindi dovranno essere cancellati successivamente.

Vedete anche:

Modulo readline:
Esempi utili di atexit per leggere e scrivere i file dello storico di readline.



Subsections
Vedete Circa questo documento... per informazioni su modifiche e suggerimenti.