Qual è lo stato di uscita?
Lo stato di uscita di un programma, chiamato anche codice di ritorno, è un numero che un programma passa al sistema operativo, allo script o ad altri processi che lo eseguono originariamente una volta terminato il programma. Non ci sono regole reali per ciò che i numeri usati come mezzo di uscita, sebbene un valore di zero tradizionalmente significhi che il programma è uscito normalmente e qualsiasi valore diverso da zero significa che il programma ha terminato in modo imprevisto. Assegnando un numero allo stato di uscita, il programma o il processo originale che chiamato codice può dire se il programma ha eseguito correttamente le attività necessarie o altre azioni devono essere intraprese. Esistono situazioni in cui un programma può interrompere intenzionalmente nel mezzo dell'esecuzione, utilizzando un codice di errore specifico per indicare che qualcosa non va, come un file di dati mancanti o una mancanza di memoria del computer. Programmi che non lo fannoDefinire esplicitamente un codice di stato di uscita restituirà uno zero al programma di chiamata a meno che il sistema operativo o l'interprete di linguaggio non terminino il programma a causa di errori.
Lo stato di uscita può anche essere utilizzato per comunicare con uno script o un altro processo passando indietro valori specifici che indicano quale azione dovrebbe essere intrapresa successivamente. Un esempio sarebbe uno script progettato per far funzionare un programma nonostante i possibili momenti in cui il programma potrebbe uscire per la manutenzione. Questo schema opererebbe con lo script che esegue il programma e quindi in attesa che uscisse. I programmatori potrebbero organizzarlo in modo che il programma restituisca un numero per significare che sta permanentemente uscendo e non dovrebbe essere riavviato, e un altro numero potrebbe indicare allo script di attendere un periodo di tempo e quindi riavviare il programma; ancora un terzo valore potrebbe indicare che il programma ha riscontrato un errore e richiede attenzione da un PROgrammer.
L'uso di un codice di stato di uscita per le comunicazioni è conveniente in determinate situazioni a causa della sicurezza e di altre limitazioni che alcuni programmi hanno in diversi sistemi operativi. Esistono molti casi in cui è impossibile per un programma comunicare con il suo processo di chiamata o un altro programma in esecuzione parallela allo stesso sistema. In queste situazioni, le opzioni per le comunicazioni tra i programmi sarebbero limitate a schemi complessi che coinvolgono la memoria condivisa, le connessioni della presa di rete o i file di scrittura. Utilizzando uno stato di uscita, le informazioni semplici possono essere passate in un modo molto semplice che non richiede lo sviluppo di un framework personalizzato.