Skip to main content

Jaki jest status wyjścia?

Status wyjścia programu, zwany również kodem zwrotnym, to liczba, którą program przekazuje do systemu operacyjnego, skryptu lub innego procesu, który pierwotnie go wykonywał po zakończeniu programu.Nie ma rzeczywistych reguł tego, co liczby użyte jako status wyjścia oznaczają, chociaż wartość zero tradycyjnie oznacza, że program opuścił normalnie, a każda niezerowa wartość oznacza nieoczekiwanie zakończone program.Przypisując numer do statusu wyjścia, oryginalny program lub proces, który wywołał kod, może stwierdzić, czy program z powodzeniem wykonał potrzebne zadania, czy też należy podjąć inne działania.

Prawie wszystkie języki komputerowe i wiele języków scenariuszy ma pewien mechanizm lubfunkcja, która może zwrócić status wyjścia.Są sytuacje, w których program może celowo zakończyć w trakcie uruchomienia, używając określonego kodu błędu, aby wskazać, że coś jest nie tak, takie jak brakujący plik danych lub brak pamięci komputera.Programy, które nie definiują wyraźnie kodu stanu wyjścia, zwrócą zero do programu wywołującego, chyba że system operacyjny lub interpreter językOdnoszenie określonych wartości, które wskazują, jakie działanie należy podjąć.Jednym z przykładów może być skrypt zaprojektowany, aby utrzymać program, pomimo możliwych czasów, gdy program może wyjść z powodu konserwacji.Ten schemat działałby ze skryptem wykonującym program, a następnie czekał na jego wyjście.Programiści mogliby to zorganizować, aby program zwrócił jedną liczbę, co oznacza, że jest na stałe wychodzący i nie powinien być ponownie uruchomiony, a inny numer może poinformować skrypt, aby czekał przez pewien czas, a następnie ponownie uruchomić program;Wciąż trzecia wartość może wskazywać, że program napotkał błąd i wymaga uwagi programisty.

Zastosowanie kodu stanu wyjścia do komunikacji jest wygodne w niektórych sytuacjach ze względu na bezpieczeństwo i inne ograniczenia, które niektóre programy mają w ramach różnych systemów operacyjnych.Istnieje wiele przypadków, w których program nie jest w stanie komunikować się z procesem połączenia lub inny program działający równolegle w tym samym systemie.W takich sytuacjach opcje komunikacji między programami byłyby ograniczone do złożonych schematów obejmujących współużytkowaną pamięć, połączenia z gniazdem sieciowym lub pisanie plików.Korzystając z statusu wyjścia, proste informacje można przekazać w bardzo podstawowy sposób, który nie wymaga opracowania niestandardowych ram.