摘要: 转自:http://www.itzhai.com/the-introduction-and-use-of-a-countdownlatch.html1、类介绍java.util.concurrent类 CountDownLatchjava.lang.Objectjava.util.concurrent.CountDownLatch一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。用给定的计数 初始化 CountDownLatch。由于调用了 countDown() 方法,所以在当前计数到达零之前,await 方法会一直受阻塞。之后,会释放所有等待的线程,aw 阅读全文
posted @ 2013-10-16 17:18 flydico 阅读(408) 评论(0) 推荐(0) 编辑
摘要: 转自:http://blog.sina.com.cn/s/blog_4bed7e340101atnf.html两年前写的程序,出了一个当时觉得莫名其妙的bug,就是线程偶尔会死掉,当时也看不出有什么问题所以当时的对策是起了一个监控线程,发现线程死掉就重启一个今天回头再去看这段代码,发现确实有漏洞代码如下public void startOneBusiness(final String businessID) {final IBusiness business = getOneBusiness(businessID);business.strat();Thread thread = new Th 阅读全文
posted @ 2013-10-16 17:15 flydico 阅读(22837) 评论(0) 推荐(0) 编辑
摘要: 2010-09-30 15:11:22|分类:|字号订阅java.util.concurrent.CountDownLatch它是一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。用给定的计数初始化CountDownLatch。在调用countDown()方法,使当前计数减一,且当前计数到达零之前,await方法会一直受阻塞。当前计数到达零之后,会释放所有等待的线程,await的所有后续调用都将立即返回。这种现象只出现一次——计数无法被重置。如果需要重置计数,请考虑使用CyclicBarrier。CountDownLatch是一个通用同步工具,它有很多用途。 阅读全文
posted @ 2013-10-16 16:38 flydico 阅读(1142) 评论(0) 推荐(0) 编辑
摘要: 分类:Java语言2013-07-01 13:52555人阅读评论(3)收藏举报线程池主线程子线程CountDownLatchExecutorService[java]view plaincopypublicclassTestThreadextendsThread{publicvoidrun(){System.out.println(this.getName()+"子线程开始");try{//子线程休眠五秒Thread.sleep(5000);}catch(InterruptedExceptione){e.printStackTrace();}System.out.prin 阅读全文
posted @ 2013-10-16 14:49 flydico 阅读(558) 评论(0) 推荐(0) 编辑