Wyjście z Pythona

Wyjscie Z Pythona



Moduł systemów operacyjnych Pythona oferuje różnorodne narzędzia do transmisji z systemem operacyjnym. Moduł ten oferuje modułowy sposób korzystania z funkcji w zależności od systemu operacyjnego. W języku programowania Python stosowane są różne metody, a jedną z nich jest „Python os exit”. Korzystając z tej funkcji, można zakończyć proces Pythona z określonym stanem bez uruchamiania programów obsługi czyszczenia lub opróżniania buforów, na przykład za pomocą wywołania systemowego „os fork()”, gdzie ta funkcja jest zwykle używana w procesie potomnym.

Funkcja komputera może zakończyć swoje wykonanie, inicjując wywołanie systemowe wyjścia na wielu komputerach z systemami operacyjnymi. W systemie wielowątkowym wyjście często symbolizuje przerwanie wątku operacyjnego. System operacyjny pobiera zasoby, w tym pliki i pamięć, w celu zarządzania zasobami. Ale jeśli mówimy o standardowym sposobie wychodzenia, prawdopodobnie byłaby to metoda „sys.exit (n)”.







Składnia

Składnia metody wyjścia Pythona os jest podana poniżej:




Składnia metody wyjścia Pythona os określa dwie rzeczy: pierwsza część reprezentuje status wyjścia procesu, a ten moduł nie zwróci żadnej wartości.



Przykład nr 1: Wykorzystanie metody „os._exit()” do wyjścia z wielu procesów bez wywoływania procedury czyszczenia

Metodę wyjścia można obsługiwać w dowolnym systemie operacyjnym, przede wszystkim w systemach operacyjnych „Windows” lub „Linux”. W naszym pierwszym przykładzie przyjrzymy się wielu procesom występującym jako proces nadrzędny i proces podrzędny, w których wykonuje on przetwarzanie bez wywoływania procedury obsługi czyszczenia w funkcji lub programie. Moduł ten działałby wydajniej w systemie operacyjnym „Linux”. Czyszczenie wątku „pop()” z niezerową wartością parametru wykonania powoduje wywołanie procedury obsługi czyszczenia. Wszystkie procedury czyszczące, które zostały wypchnięte, ale jeszcze nie zwolnione, są zdejmowane ze stosu sanityzacji i wykonywane w kolejności LIFO (ostatnie wejście i pierwsze wyjście), gdy wątek się zatrzyma, ale w tym przykładzie nie byłoby potrzeby ich wywoływania.






Poniżej wyjaśniono fragment kodu dla naszego pierwszego przykładu wyjścia z Pythona:

Program został zainicjowany przez zaimportowanie biblioteki „os”, ponieważ zależy nam na spełnieniu warunków i warunków połączenia z systemem operacyjnym naszego urządzenia. Następnie stworzyliśmy „PID” i połączyliśmy „Python” z biblioteką „os”. Teraz użyjemy instrukcji warunkowej, w której warunkiem „jeśli” jest „PID jest większy niż 0”.



Następnie użyliśmy funkcji „print()”, która musi wydrukować instrukcję „\nProcessing in Parent”, gdzie „\n” służy do przeniesienia kursora do nowej linii w ramach warunku „if”. Zmienna „info” jest inicjowana wywołaniem „os.waitpid(pid,0)”, gdzie „PID” zaczyna się od przedziału „0”. W dalszym postępowaniu zastosowaliśmy kolejny warunek „if” w „os.WIFEXITED()”, w którym nadaliśmy mu opis informacji „1” do jego przetwarzania. Przechowuje swoje informacje o przetwarzaniu w zdefiniowanej przez użytkownika funkcji „python_code”, która przechowuje instrukcję print „Child Code to be Exit” i nadaje jej wartość „python_code” w ramach funkcji „print()”.

Teraz dochodzimy do naszego warunku „innego”, który ma cztery instrukcje print. Instrukcja w pierwszej funkcji „print()” to „Przetwarzanie w potomku”. Druga instrukcja print to „ID of Processing:” i zawiera wartość „os.getpid()”, funkcji zawierającej plik kodu Pythona do przetwarzania potomnego. Trzecią użytą tutaj instrukcją print jest „Hej Python!!” a czwarta instrukcja print to „Przetwarzanie podrzędne istnieje!” Na koniec zastosowaliśmy nasz główny moduł, aby wyjść z przetwarzania wykonywania programu istniejącego pliku, którym jest „os._exit()” i gdzie przypisana jest zmienna „os.EX_OK” bez zwracania żadnej funkcji do przetwarzania.


Ponieważ przetwarzanie potomne jest priorytetem dla pierwszego uruchomienia i wyjścia z programu z przetwarzania nadrzędnego, ponieważ wymaga to więcej czasu. Tak więc migawka wyjściowa po prostu wyświetla instrukcje drukowania, które podaliśmy w poprzednim kodzie, ale plik, który utworzyliśmy w systemie, wyświetla swój identyfikator przetwarzania „78695”, który możemy zobaczyć w ostatniej migawce. A wtedy przetwarzanie wyjścia nadrzędnego wynosiłoby „0”, ponieważ nie przechodzi nawet dokładnego przetwarzania, ponieważ wymaga więcej obsługi.

Przykład nr 2: Wykorzystanie metody „os._exit()” do wyjścia z ogólnego procesu bez opróżniania buforów

W tym przykładzie przyjrzymy się zjawisku wyjścia z wykonania prostego ogólnego przetwarzania po uruchomieniu jego interwałów od odczytania go przez system. Tutaj również nie używamy nawet buforów płuczących, ponieważ nie jest to wymagane do przetwarzania. W końcu „os._exit” działałoby wydajniej przy wychodzeniu z procesu.


Spójrzmy na kod, do którego zaimportowaliśmy bibliotekę Pythona „os”. Program zaczyna się od pętli for, w której używamy zmiennej „p” do przechowywania niektórych danych i ustawiamy jej zakres na „6”. Następnie zastosowaliśmy warunek „jeśli” do zmiennej „p”, który wyrównuje całkowite interwały do ​​„4”. Ponieważ system przetwarzania rozpoczyna się od indeksu „0”, uruchomiłby proces od „0” do „4”. Gdy tylko warunek zostanie spełniony, czyli wartość „p” stanie się równa 4, program wykona następną instrukcję, którą jest funkcja „print()” i dostarczy jednostce przetwarzającej „exit”. W ostatnim wierszu użyliśmy funkcji „os._exit()”, aby wyjść z funkcji po rozpoczęciu od „0”, a następnie zakończyć przetwarzanie. Ostatecznie wszystkie wartości, które zostały zapisane w zmiennej „p” po przetworzeniu, zostaną wydrukowane na wyświetlaczu wyjściowym, ponieważ użyliśmy funkcji „print()” poprzez przypisanie do niej zmiennej „p”.


Wyświetlacz wyjściowy wyświetliłby tylko liczby „0”, „1”, „2” i „3”, ponieważ są to cztery liczby, które osiągnęły po przetworzeniu, a następnie przetwarzanie byłoby wyjściem.

Przykład 3: Wykorzystanie metody „os._exit()” do wyjścia z procesu, którego nie ma w buforze

Czasami próbujemy przekazać niektóre procesy, które nie były łatwe dla systemu do wykonania przetwarzania lub zatrzymania z jakiegokolwiek powodu — głównie wtedy, gdy przetwarzanie jest nieobecne dla określonego programu z powodu istnienia określonego materiału, biblioteki lub alokacji plików .


Rzućmy okiem na nasz fragment kodu, w którym użyliśmy „Liczby” jako zmiennej i ustawiliśmy ją w zakresie od „0” do „7”. Teraz zastosowaliśmy warunek „if”, w którym „Liczby” równają się indeksom „5”, a następnie użyliśmy instrukcji „print()”, aby wydrukować wartość „exit”. Następnie użyliśmy specjalnego modułu „raise SystemExit”, aby wyjść z przetwarzania, takiego jak „os._exit”, i ponownie użyliśmy funkcji „print()”, aby wyświetlić liczby przechowywane w zmiennej „Numbers” po zakończeniu procesu.


Migawka wyjściowa będzie wyraźnie opisywać, że nie będzie wyświetlać wartości „Liczby” po module użycia wyjścia. Ponieważ brakuje głównego materiału, takiego jak biblioteka i inicjalizacja, po przetworzeniu programu zwróci on „pusty” na wyświetlaczu wyjściowym i wróci bez odczytania jakiejkolwiek wartości lub program może nie przejść do wykonania.

Wniosek

W tym artykule omówiliśmy trzy przykłady związane z metodą wyjścia Pythona. W pierwszym przykładzie użyliśmy modułu wyjściowego Pythona os do wyjścia z procesu potomnego bez użycia jakichkolwiek programów obsługi opróżniania i czyszczenia. W drugim przykładzie użyliśmy modułu wyjścia os w zakończeniu procesu w jednym ogólnym programie kodu bez opróżniania bufora. Trzeci przykład dotyczy wyjścia z nieobecnego procesu, który nie jest aktualnie obecny lub przechowywany w systemie.