Entwickler-Ecke

Basistechnologien - Thread definieren


Max064 - Mi 01.09.10 07:52
Titel: Thread definieren
Hallo,

ich suche nach einer brauchbaren Erklärung für einen Thread. Ich habe schon verschiedene C# Bücher gewälzt, aber alle benutzen den Begriff, ohne ihn jemals zu erklären. Auch mit google stoße ich nur auf meiner Meinung nach schwammige Erklärungen...

Kann mir jemand eine Homepage, Buch (am besten aus google books :-) )oder ähnliches empfehlen?

lg Max


norman2306 - Mi 01.09.10 09:23

Willst du wissen, wie man mit Threads umgeht oder willst du wissen, was ein Thread ist?

Wie man damit umgeht, findest du in einer Menge büchern... ich finde das hier recht gut: http://www.galileocomputing.de/1747?GPP=opjiVIII. Das gibt es demnächst auch in der 2010er Version.

Die Bedeutung ist einfach erklärt:
Thread kommt aus dem englischen und heißt soviel wie Faden;) Also, mal im ernst:

Ein Thread ist eine einzelne Aufgabe, deren Zwischenschritte weitestgehend asynchron zu anderen Aufgaben und daher parallel ausgeführt werden können. Im Prinzip dient es "lediglich" dazu, dem Computer die Kontrolle darüber zu überlassen, wann er diese Aufgabe ausführt, und wann eine andere. Wenn du zum Beispiel eine komplexe Aufgabe löst, willst du nicht, dass dein gesamter Rechner gesperrt ist, weil dein Prozessor nur noch mit dieser einen Aufgabe beschäftigt ist. Daher erledigst du das in einem Thread - du gibst den Computer damit die Möglichkeit, deine Berechnung ab und zu unterbrechen, um zum Beispiel irgendwelche Nutzeraktionen zu verarbeiten. Windows liefert schon eine Grundfunktionalität in Sachen Threading. Es lädt nämlich jedes einzelne Program in einem eigenen Thread (das ist gerade die eigentliche Revolution an Windows - obwohl es keineswegs eine Erfindung vom MS ist), und du kannst somit mehrere Programme gleichzeitig laufen lassen. Verstanden?


Max064 - Mi 01.09.10 10:55

Ich meine die Bedeutung ;-). Vielen Dank, ich denke damit kann ich auf jeden Fall was anfangen.

Bisher habe ich in Büchern noch nie mal so eine grundlegende Definiton gefunden...