multithreading

buzzlightyeah

Mitglied
Hallo! Ich habe eine Aufgabe bekommen die Klasse Multithreading zu erweitern sodass sie
mit Hilfe von { Thread} alle gegebenen { Runnable}s parallel ausfuehrt und bis zur Beendigung abwartet. Ich komme aus der anderen Programmiersprache und komme mit der Aufgabe nicht klar. Kann mir bitte jemand helfen? Das ist der vorgegenene Code, den ich erweitern soll..


public class Multithreading {

public void a_runParallelAndWait(List<Runnable> runnables) throws InterruptedException {
throw new UnsupportedOperationException("TODO");}}
 
Hast Du Dir die Klasse Thread denn mal im Detail angesehen? Die Dokumentation findest Du unter:

Was Du brauchst ist ja offensichtlich nur:
  • Das Starten eines neuen Threads mit einen Runnable
  • Warten, bis ein Thread gestorben ist.

Wenn Du das hast, dann kannst Du Dir ja überlegen, wie Du erst alle Runnables starten kannst um dann im Anschluss abzuwarten, bis alle Threads fertig sind.
 
Hast Du Dir die Klasse Thread denn mal im Detail angesehen? Die Dokumentation findest Du unter:

Was Du brauchst ist ja offensichtlich nur:
  • Das Starten eines neuen Threads mit einen Runnable
  • Warten, bis ein Thread gestorben ist.

Wenn Du das hast, dann kannst Du Dir ja überlegen, wie Du erst alle Runnables starten kannst um dann im Anschluss abzuwarten, bis alle Threads fertig sind.
Kann ich das einfach so machen?

public void a_runParallelAndWait(List<Runnable> runnables) throws InterruptedException {
for (int i=0; i<runnables.size(); i++) {
Thread t = new Thread (runnables i );
t.start();
}
}
 

Zurück
Oben