我想知道JAVA多线程中,如何让一个线程去等待N个线程执行完成后,再执行。

[复制链接]
查看11 | 回复1 | 2011-4-2 07:41:39 | 显示全部楼层 |阅读模式
回复

使用道具 举报

千问 | 2011-4-2 07:41:39 | 显示全部楼层
<pre id=\"best-answer-content\" class=\"reply-text mb10\">java.util.concurrent.CountDownLatch 这个类可以实现你所要的功能

例如:CountDownLatch latch = new CountDownLatch(5)//声明计数器为5个
Thread t = new Thread() {

public void run() {
try {

//TODO 你的应用

} catch (Exception e) {

//TODO 异常处理

}

finally {

latch.countDown();//这句是关键

System.out.println(\"ok\");//5个线程都跑完后输出
}

}

};
t.start();
然后让以上操作循环五次(就是说同时开5个线程),那么这个\"ok\"就会在等到这5个线程都ok后才会被输出一次。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行