Izhod iz OS Python

Izhod Iz Os Python



Pythonov modul operacijskih sistemov ponuja različna orodja za prenos z operacijskim sistemom. Ta modul ponuja modularno metodo uporabe funkcije, odvisno od operacijskega sistema. V programskem jeziku Python se uporabljajo različne metode in ena izmed njih je 'Python os exit'. Z uporabo te funkcije lahko končate proces Python z določenim statusom, ne da bi zagnali čistilne obdelovalce ali splakovalne medpomnilnike, za ponazoritev s sistemskim klicem »os fork()«, kjer se ta funkcija običajno uporablja v podrejenem procesu.

Računalniška funkcija lahko konča svoje izvajanje tako, da sproži izhodni sistemski klic v mnogih operacijskih sistemih računalnikov. V večnitnem sistemu izhod pogosto simbolizira prekinitev delujoče niti. Operacijski sistem pridobi vire, ki vključujejo datoteke in pomnilnik, za upravljanje virov. Če pa govorimo o standardnem za izhod, potem bi bila to verjetno metoda “sys.exit(n)”.







Sintaksa

Sintaksa izhodne metode Python OS je podana spodaj:




Sintaksa izhodne metode Python OS določa dve stvari: prvi del predstavlja stanje izhoda procesa in ta modul ne bo vrnil nobene vrednosti.



1. primer: uporaba metode »os._exit()« za izhod iz več procesov brez klica katerega koli čistilnega upravljalnika

Izhodno metodo je mogoče upravljati v katerem koli operacijskem sistemu, predvsem v operacijskih sistemih »Windows« ali »Linux«. V našem prvem primeru si bomo ogledali več procesov, ki se pojavljajo kot nadrejeni proces in podrejeni proces, kjer izvaja obdelavo, ne da bi v funkciji ali programu poklical skrbnika za čiščenje. Ta modul bi učinkoviteje deloval v operacijskem sistemu »Linux«. Čiščenje niti »pop()« z vrednostjo, ki ni ničelna, za parameter izvajanja povzroči klic rutine za obravnavo čiščenja. Vsi postopki čiščenja, ki so bili potisnjeni, a še niso bili sproščeni, so izločeni iz sanitarnega sklada in izvedeni v vrstnem redu zadnji vstop in prvi ven (LIFO), ko se nit ustavi, vendar je v tem primeru ne bi bilo treba klicati.






Spodaj je razložen delček kode za naš prvi primer izhoda iz OS Python:

Program je bil sprožen z uvozom knjižnice »os«, saj nas skrbi izpolnjevanje pogojev in pogojev za povezavo z operacijskim sistemom naše naprave. Nato smo ustvarili »PID« in povezali »Python« s knjižnico »os«. Zdaj uporabljamo pogojni stavek, kjer je pogoj »če« »PID je večji od 0«.



Za tem smo uporabili funkcijo “print()”, ki mora natisniti stavek “\nProcessing in Parent”, kjer se “\n” uporablja za prenos kazalca v novo vrstico znotraj pogoja “if”. Spremenljivka “info” se inicializira na klic “os.waitpid(pid,0)”, kjer se “PID” začne z intervalom “0”. V nadaljnjem postopku smo uporabili še en pogoj »če« za »os.WIFEXITED()«, kjer smo mu dodelili opis informacij »1« za njegovo obdelavo. Podatke o obdelavi shranjuje v uporabniško definirani funkciji »python_code«, ki vsebuje stavek za tiskanje »Child Code to be Exit« in ga dodeli vrednosti »python_code« znotraj funkcije »print()«.

Zdaj smo prišli do našega pogoja »drugo«, ki ima štiri izjave za tiskanje. Izjava v prvi funkciji »print()« je »Obdelava v otroku«. Drugi stavek za tiskanje je »ID obdelave:« in s tem vsebuje vrednost »os.getpid()«, funkcije, ki vsebuje kodno datoteko Pythona za podrejeno obdelavo. Tretji stavek za tiskanje, uporabljen tukaj, je 'Hey Python!!' in četrti stavek za tiskanje je 'Child Processing Exists!' Nazadnje smo uporabili naš glavni modul za izhod iz obdelave izvajanja programa obstoječe datoteke, ki je »os._exit()« in kjer je spremenljivka »os.EX_OK« dodeljena brez vrnitve katere koli funkcije za obdelavo.


Kot podrejena obdelava je prednostna naloga za prvi zagon in izhod iz programa iz nadrejene obdelave, ker zahteva več časa. Torej izhodni posnetek preprosto prikazuje izjave za tiskanje, ki smo jih podali v prejšnji kodi, vendar datoteka, ki smo jo ustvarili v sistemu, prikazuje svoj ID obdelave, »78695«, ki ga lahko vidimo na zadnjem posnetku. In potem bi bila obdelava nadrejenega izhoda »0«, saj niti ni podvržena temeljiti obdelavi, ker za več potrebuje upravljalnik.

Primer # 2: Uporaba metode »os._exit()« za izhod iz splošnega procesa brez izpiranja medpomnilnikov

V tem primeru si bomo ogledali pojav izhoda iz enostavnega splošnega izvajanja obdelave po izvajanju njegovih intervalov od branja skozi sistem. Tukaj tudi ne uporabljamo splakovalnih medpomnilnikov, ker niso potrebni za obdelavo. Konec koncev bi “os._exit” deloval bolj učinkovito za izhod iz procesa.


Poglejmo kodo, kamor smo uvozili knjižnico Python »os«. Program se začne z zanko for, kjer uporabimo spremenljivko 'p' za shranjevanje nekaterih podatkov in nastavimo njen obseg na '6'. Po tem smo uporabili pogoj 'če' za spremenljivko 'p', ki izenači skupne intervale na '4'. Ker se procesni sistem začne z indeksom '0', bi vodil proces od '0' do '4'. Takoj ko se pogoj ujema, kar pomeni, da vrednost 'p' postane enaka 4, bo program izvedel naslednji stavek, ki je funkcija 'print()', in procesorski enoti zagotovil 'izhod'. V zadnji vrstici smo uporabili funkcijo »os._exit()« za izhod iz funkcije po začetku od »0« in nato za konec obdelave. Na koncu bodo vse vrednosti, ki so bile po obdelavi shranjene v spremenljivki 'p', natisnjene na izhodnem zaslonu, saj smo uporabili funkcijo 'print()', tako da smo ji dodelili spremenljivko 'p'.


Izhodni zaslon bi samo prikazal številke '0', '1', '2' in '3', saj so to štiri številke, ki so bile dosežene po obdelavi, in po tem bi bila obdelava izhod.

Primer#3: Uporaba metode »os._exit()« za izhod iz procesa, ki ne obstaja v medpomnilniku

Včasih skušamo prenesti nekatere procese, ki jih sistemu ni bilo enostavno izvesti ali ustaviti iz kakršnega koli razloga – večinoma ko obdelava za določen program ni zaradi obstoja kakršnega koli posebnega materiala, knjižnice ali dodelitve datotek .


Oglejmo si naš delček kode, kjer smo kot spremenljivko uporabili »Številke« in jo nastavili v obsegu od »0« do »7«. Zdaj smo uporabili pogoj »if«, pri čemer so »številke« enake indeksom »5«, nato pa smo uporabili stavek »print()« za tiskanje vrednosti »exit«. Nato smo uporabili poseben modul »raise SystemExit« za izhod iz obdelave, kot je »os._exit«, in znova uporabili funkcijo »print()« za prikaz številk, shranjenih v spremenljivki »Numbers« po izhodu iz procesa.


Izhodni posnetek bo jasno opisal, da ne bo prikazal vrednosti »Številke« po modulu izhodne uporabe. Ker manjka glavno gradivo, kot sta knjižnica in inicializacija, bi se po obdelavi programa na izhodnem zaslonu vrnilo »prazno« in vrnilo, ne da bi prebralo kakršno koli vrednost, ali pa se program ne izvaja.

Zaključek

V tem članku smo razpravljali o treh primerih, povezanih z izhodno metodo Python OS. V prvem primeru smo uporabili izhodni modul Python OS za izhod iz podrejenega procesa brez uporabe kakršnega koli orodja za splakovanje in čiščenje. V drugem primeru smo uporabili izhodni modul os pri izhodu iz procesa v enem samem splošnem programu kode brez splakovalnega medpomnilnika. Tretji primer je povezan z izstopom iz odsotnega procesa, ki trenutno ni prisoten ali shranjen v sistemu.