У меня проблемы в среде mulithreads. Я могу создать несколько потоков, которые выполняются правильно, но процесс никогда не заканчивается. Я не могу дождаться окончания. Я хочу сделать какое-то действие, когда все мои потоки закончатся, но в настоящее время это невозможно. Здесь мой код:Я не могу ждать мои темы в 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();
}
}
}
Кто-то знает, как достичь моей цели? Благодаря!
Где вы звоните 'Notify()'? – Kayaman
Почему вы создаете новый пул потоков внутри потока? У вас уже есть поток для выполнения. –
Также посмотрите http://stackoverflow.com/questions/1250643/how-to-wait-for-all-threads-to-finish-using-executorservice. –