Was ist der Unterschied zwischen Gleichzeitigkeit und Parallelität?
Beispiele sind erwünscht.
Was ist der Unterschied zwischen Gleichzeitigkeit und Parallelität?
Beispiele sind erwünscht.
Sie lösen unterschiedliche Probleme. Die Gleichzeitigkeit löst das Problem der knappen CPU-Ressourcen und der vielen Aufgaben. Man erstellt also Threads oder unabhängige Ausführungspfade durch den Code, um die Zeit auf der knappen Ressource zu teilen. Bis vor kurzem hat die Gleichzeitigkeit die Diskussion wegen der CPU-Verfügbarkeit dominiert.
Die Parallelität löst das Problem, genügend Aufgaben und geeignete Aufgaben (solche, die korrekt aufgeteilt werden können) zu finden und sie auf reichlich vorhandene CPU-Ressourcen zu verteilen. Parallelität gab es natürlich schon immer, aber sie rückt immer mehr in den Vordergrund, weil Multicore-Prozessoren so billig sind.
Konkurrenzen: mehrere Ausführungsabläufe mit der Möglichkeit, Ressourcen gemeinsam zu nutzen
Ex: Zwei Threads konkurrieren um einen E/A-Anschluss.
Paralellismus: Aufspaltung eines Problems in mehrere ähnliche Teile.
Ex: Parsen einer großen Datei durch Ausführung von zwei Prozessen auf jeder Hälfte der Datei.
Gleichzeitigkeit vs. Parallelität
Rob Pike in Gleichzeitigkeit ist nicht Parallelität
Bei der Gleichzeitigkeit geht es darum, viele Dinge auf einmal zu erledigen.
Bei der Parallelität geht es darum, viele Dinge auf einmal zu tun.
Gleichzeitigkeit - bearbeitet mehrere Aufgaben auf einmal
Parallelität - verarbeitet mehrere Threads auf einmal
Meine Vision von Gleichzeitigkeit und Parallelität
Gleichzeitigkeit \=> Wenn mehrere Aufgaben in sich überschneidenden Zeiträumen mit gemeinsam genutzten Ressourcen durchgeführt werden (potenzielle Maximierung der Ressourcenauslastung).
Parallel \=> wenn eine einzelne Aufgabe in mehrere einfache unabhängige Teilaufgaben unterteilt wird, die gleichzeitig ausgeführt werden können.
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.