use*_*196 9 java multithreading
什么是使主线程等到所有线程完成的最佳方法?
for(int i=0;i<n;i++){
Thread t=new Thread();
t.start();
}
//wait for all threads to finish
Pet*_*rey 19
创建一个列表并等待所有.
List<Thread> threads = new ArrayList<Thread>();
for(int i=0;i<n;i++){
Thread t=new Thread();
t.start();
threads.add(t);
}
for(Thread t: threads) t.join();
Run Code Online (Sandbox Code Playgroud)
但是,使用ExecutorService可以更好地处理线程池.
ExecutorService es = Executors.newCachedThreadPool();
for(int i=0;i<n;i++)
es.submit(new Task(n));
es.shutdown();
es.awaitTermination(timeout, TimeUnit.SECONDS);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11441 次 |
| 最近记录: |