23Multitasking

Die sequentielle Ausführung eines Programms ist in manchen Fällen nicht genug, das Programm muss scheinbar mehrere Dinge gleichzeitig tun. Interaktive Systeme müssen jederzeit Eingaben entgegennehmen können, unabhängig davon, ob gerade eine komplexe Berechnung läuft oder Daten über ein Netzwerk übertragen werden. Zur Lösung dieses Problems kann ein Programm ein oder mehrere Exemplare von sich für eine spezielle Aufgabe starten – dies wird als „Forken“ bezeichnet – oder für jede Aufgabe einen eigenen Thread (Faden) in dem Prozess ausführen. Dies wird als „Multithreading“ bezeichnet.

Bei der gleichzeitigen Ausführung von mehreren Exemplaren eines Programms ist die Kommunikation und Synchronisation untereinander sehr aufwendig. Auch ...

Get Python 3 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.