Die Python Programmiersprache enthält umfangreiche Bibliotheken von standardisierten bereits geschriebenen Code, der alltäglichen Programmieraufgaben leicht und effizient zu machen. Eine dieser Bibliotheken , die " os" Bibliothek enthält Funktionen verwendet werden, um mit dem Programmierer des Betriebssystems interagieren. Aus diesem Grund kann Python Programmierer gewinnen wichtige Daten über den Zustand des Systems . Der Programmierer kann auch schaffen " Prozesse", oder separate Instanzen von einem Programm, das (oder "fork" ) von Split und führen gleichzeitig mit dem Hauptprogramm. Diese Prozess im Speicher mit dem Hauptprogramm laufen , den gleichen Code ausführen . Dies ermöglicht ein Vielfaches Berechnung , die gleichzeitig passieren in der Spanne des gleichen Programms . Die " os " Module
Die " os" -Modul mit Python enthalten gibt Programmierern Zugriff auf viele Aspekte ihrer Systeme über eine intuitive Python-Schnittstelle . Die Funktionalität des OS -Moduls reicht von der einfachen Zugriff auf Variablen in dem System (wie der Name System ) zur Überwachung der Umgebung des Benutzers . Das folgende Beispiel zeigt, wie ein Programmierer die os-Modul importiert und verwendet einige seiner integrierten Funktionen :
>>> import os >>>
os.name
' nt '
>>> os.getcwd () //gibt aktuelle Verzeichnis
'C: \\ \\ Python27 '
das os -Modul und Prozesse
Das os-Modul kann auch helfen, die Programmierer abrufen von Informationen über das aktuell laufende Programm . Ein Python-Programm können Sie die Funktionen in der os-Modul , um Daten bezüglich des Programms Prozess-ID (PID) Zahlen zu sammeln , oder Informationen über den Benutzer oder die Gruppe der Ausführung des Programms während der Ausführung von Code . Hinweis: Die meisten Methoden , die Daten über Benutzer-und Gruppen-IDs abzurufen nur auf Unix-Betriebssystemen arbeiten. Bestimmte Methoden nur auf Systemen für die sie bestimmt waren zu arbeiten. Zum Beispiel bekommt der folgende Code des Benutzers Prozess-ID und die Benutzer- Benutzer-und Gruppen-IDs .
>>> Os.getpid () //Windows und Unix
1500 < br >
>> os.getuid () //Unix nur
85
>> os.getgid () //Unix nur
34
Erstellen von Prozessen
Python-Programmierer können die " fork () " Methode verwenden, um eine weitere Instanz des Programms zu laichen. Wenn dies geschieht, eine weitere Kopie der Programm lädt , und sowohl die Eltern und das Kind Programme weiterhin den gleichen Code ausführen . Im folgenden Beispiel wird der fork () -Funktion erstellt einen neuen Prozess , und beide Prozesse wird eine "if" -Anweisung ausführen . Der übergeordnete Prozess (der Prozess der Ausführung des " fork () "-Befehl ) druckt die Eltern -ID , und das Kind wird eine eigene Prozess -ID drucken:
cpid = os.fork () //fork () kehrt Kind PID
wenn cpid == 0: % os.getpid ()
: //der Kind-Prozess wird nicht seine ID in die Variable
print " % s Child" gespeichert haben
anderes:
print " Parent: % s" % os.getpid ( )
Controlling Prozesse
Python Prozesse erstellen können , die os-Modul liefert auch Methoden, um sie zu verwalten. Die " wait () "-Methode und seine Variationen steuern, wie ein Prozess seiner untergeordneten Prozesse verwaltet . Der Hauptprozess kann nur warten, bis jeder Prozess abgeschlossen ist, wie in wait () . Oder es kann für einen bestimmten Prozess unter Verwendung des waitpid () Methode warten. Schließlich kann der übergeordnete Prozess die " wait3 () " und " wait4 ()" Methoden, um Informationen über die Prozesse zu sammeln , wenn sie die Ausführung zu stoppen.
Mit Prozesse
Verwenden multiprocess Programme ermöglicht es dem Programmierer , um Anwendungen zu entwickeln, die mehrere Dinge auf einmal zu tun . Eine typische Anwendung Multiprocessing ist für den Einsatz auf Prozessoren mit mehreren Kernen geschrieben. Der Programmierer kann Prozesse von einem Programm erzeugt hat, um Berechnungen auf mehrere Cores durchführen , die Maximierung Berechnung Geschwindigkeit und Effizienz. Oder kann der Programmierer ein Verfahren verwenden , um einen Algorithmus zu hören , was für ein Signal von einer Internet-Verbindung vor der Aktivierung und Versenden von Informationen an das Hauptprogramm wartet auszuführen.