Ich habe Probleme in Multithreads Umgebung. Ich kann mehrere Threads erstellen, die korrekt ausgeführt werden, aber der Prozess endet nie. Ich kann nicht auf den Abschluss warten. Ich möchte etwas tun, wenn alle meine Threads enden, aber derzeit ist es unmöglich. Hier mein Code:Ich kann nicht warten, meine Threads in Java
public static void main(String[] args){
public void run(){
ExecutorService exec = Executors.newFixedThreadPool(10);
try {
for(int i=0;i<100;i++){
final Integer a=i;
try {
exec.submit(new Runnable() {
@Override
public void run() {
System.out.println(a);
}
});
} catch (Exception e) {
e.printStackTrace();
}
}
}
catch(Exception e){
e.printStackTrace();
}
}
}
Jemand weiß, wie man mein Ziel erreicht? Vielen Dank!
Wo Sie 'notify()' nennen? – Kayaman
Warum erstellen Sie einen neuen Thread-Pool innerhalb eines Threads? Sie haben bereits einen Thread zum Ausführen. –
Siehe auch http://StackOverflow.com/questions/1250643/how-to-wait-for-all-threads-to-finish-using-executorservice. –