baby18 Geschrieben 8. Januar 2004 Teilen Geschrieben 8. Januar 2004 Was ist da der unterschied? Bitte helft mir! ciao baby18 Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
FinalFantasy Geschrieben 8. Januar 2004 Teilen Geschrieben 8. Januar 2004 Multithreading ist, wenn eine Anwendung mehrere Operationen gleichzeitig laufen lassen kann (sogenannte Threads) und Multitasking ist, wenn man mehrere Anwendungen gleichzeitg laufen lassen kann, in Windows z.B. einen Explorer und Word gleichzeitig. Du kannst dir übrigens im Taskmanager die Threads pro Programme anzeigen lassen, bzw, zumindest deren Anzahl: View-Select columns und dann Threadcount anhacken. Multithreading beschränkt sich quasi auf eine Anwendung, und Multitasking sind mehrere Anwendungen gleichzeitig. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
baby18 Geschrieben 8. Januar 2004 Autor Teilen Geschrieben 8. Januar 2004 WAS MEINST DU MIT OPERATIONEN? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
FinalFantasy Geschrieben 8. Januar 2004 Teilen Geschrieben 8. Januar 2004 Naja, ein Programm kann ohne Threads ja immer nur eine bestimmte Sache auf einmal machen. Nehmen wir mal einen Chatserver als Beispiel. Normalerweise wartet der auf Anfragen von seinen Clients. Wenn jetzt ein Client etwas zum Server schickt, kann er nicht gleichzeitig von anderen Clients was empfangen, die wären also geblockt. Wenn der Server aber jetzt für jeden Client einen eigenen Thread laufen hat, empfängt jeder Thread informationen, wenn vom Client was gesendet wird. Die Clients blocken sich also nicht gegenseitig. Von der Programmierung her ist das manchmal schwer zu synchronieren, aber das ist ja hier eher unwichtig. Mit dem Wort gleichzeitig sollte man hier allerdings vorsichtig sein, weil vom Prozessor trotzdem alles sequentiell abgearbeitet wird, aber eben so schnell hin und hergeschalten wird, dass es gleichzeitig zu sein scheint... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
nic_power Geschrieben 8. Januar 2004 Teilen Geschrieben 8. Januar 2004 Hallo, beim Multithreading existieren mehrere parallele Kontrollflüsse innerhalb eines einzelnen Prozesses. Die Threads teilen sich dabei den Kontext des Prozesses bzgl. der Ressourcen aus Betriebssystemsicht. Diese Funktionalität wird üblicherweise über Bibliothken zur Verfügung gestellt und ist auch in Betriebssystemen implementierbar, die keine Multitastking-Unterstützung besitzen (keinerlei Hardware Support notwendig). Beim Multitasking laufen mehrere Prozesse parallel. Jeder dieser Prozesse ist unabhängig in einem eigenen Adressbereich und kann nicht auf die Ressourcen anderer Prozesse (Speicher usw.) zugreifen. Nic Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
FinalFantasy Geschrieben 8. Januar 2004 Teilen Geschrieben 8. Januar 2004 Das is auch ne gute Erklärung. *gg* An die Unterschiede bei den Ressourcen hab ich gar nicht mehr gedacht. *g* Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
nic_power Geschrieben 8. Januar 2004 Teilen Geschrieben 8. Januar 2004 Hallo, das war einer der wichtigsten Gründe für die Implementierung von Multithreading-Bibliotheken. Ein Kontext-Switch auf Prozessebene ist sehr teuer (= dauert lange) und ist auch nicht unbedingt notwendig, da viele Anwendungen nur Kontrollflüsse innerhalb eines Prozesses benötigen. Ein "Kontext-Switch" beim Multithreading ist dagegen um Größenordnungen schneller. Nic Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.