Für was sind Threads wichtig?
Cores und Threads Zum Beispiel können die Threads einer Textverarbeitung die Verarbeitung der Texteingabe, das Speichern des Dokuments oder das Drucken sein. Weil auf PCs immer mehr Programme gleichzeitig laufen, ist auch die Zahl der abzuarbeitenden Threads enorm gewachsen.
Wie viele Threads hat eine CPU?
ein Doppelkernprozessor mit zwei Threads pro Kern, der Sun UltraSPARC-T1-Prozessor ein Achtkern-Prozessor mit vier Threads pro Kern. Im Unterschied zu echten Mehrkern-Prozessoren teilen sich hier die „Kerne“ manche Ausführungseinheiten, wie zum Beispiel die Gleitkomma-Recheneinheit oder sogar die ALU.
Wie startet man einen eigenständigen Thread?
Einen eigenständigen Thread startet man über eine neue Instanz einer Thread-Klasse, der im Konstruktor eine Rückruffunktion (Delegate) übergeben wird. Der Thread wird dann über die Instanzmethode Start() gestartet. Der Thread wird beendet, wenn die Rückruffunktion die Kontrolle an den Aufrufer zurückgibt.
Wie ist die Kommunikation zwischen diesen Threads möglich?
Da Threads, die demselben Prozess zugeordnet sind, den gleichen Adressraum verwenden, ist eine Kommunikation zwischen diesen Threads von vornherein sehr einfach möglich (vgl. mit Interprozesskommunikation bei Prozessen). Jeder „Programmfaden“ ist für die Ausführung einer bestimmten Aufgabe verantwortlich.
Wie funktioniert das Multithreading in Java?
In Java ist ein Arbeiten mit mehreren Threads von vornherein vorgesehen. Dabei funktioniert das Multithreading auch, wenn das Betriebssystem dieses nicht oder nur mangelhaft unterstützt. Möglich ist das, weil die virtuelle Maschine von Java die Threadumschaltung einschließlich Stackverwaltung übernehmen kann.
Wie funktioniert die Synchronisation von Threads?
Diese müssen durch den Einsatz von Synchronisationsmechanismen aufgelöst werden. Da Threads, die demselben Prozess zugeordnet sind, den gleichen Adressraum verwenden, ist eine Kommunikation zwischen diesen Threads von vornherein sehr einfach möglich (vgl. mit Interprozesskommunikation bei Prozessen).