同步类CountDownLatch整理
来源:互联网 发布:怎么用u盘导出考勤数据 编辑:程序博客网 时间:2024/06/06 05:10
import java.util.concurrent.CountDownLatch;
* CountDownLatch,一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。 主要方法 public
* CountDownLatch(int count); public void countDown(); public void await()
* throws InterruptedException 构造方法参数指定了计数的次数 countDown方法,当前线程调用此方法,则计数减一
* awaint方法,调用此方法会一直阻塞当前线程,直到计时器的值为0
*
* 作用:可以用来确保某些活动直到其他活动都完成后才继续执行。
* 使用场景:
* 1、例如ABC上学校然后一起上课;
* 2、某个操作需要的资源初始化完毕
* 3、某个服务依赖的线程全部开启等等...
*
* @author huawangxin 2017年2月17日 上午11:05:24
*参考:
*http://blog.csdn.net/lmj623565791/article/details/26626391
*http://www.iteye.com/topic/1002652
*/
public class TestCountDownLatch {
private static CountDownLatch latch = new CountDownLatch(3);
public static void main(String[] args) throws InterruptedException {
new Thread() {
public void run() {
A();
latch.countDown();
};
}.start();
new Thread() {
public void run() {
B();
latch.countDown();
};
}.start();
new Thread() {
public void run() {
C();
latch.countDown();
};
}.start();
latch.await();
D();
}
public static void A() {
System.out.println("A在去学校的路上");
}
public static void B() {
System.out.println("B在去学校的路上");
}
public static void C() {
System.out.println("C在去学校的路上");
}
public static void D() {
System.out.println("开始上课了");
}
}
0 0
- 同步类CountDownLatch整理
- 整理java7中几种常见同步辅助类-CountDownLatch
- CountDownLatch同步辅助类
- CountDownLatch同步工具类
- 同步类CountDownLatch
- CountDownLatch同步工具类
- CountDownLatch -- 同步辅助类
- CountDownLatch--线程同步辅助类
- 同步工具类之 CountDownLatch
- 同步工具类-闭锁CountDownLatch
- 线程同步工具类——CountDownLatch
- Java5 多线程(六)--CountDownLatch 同步工具类
- 黑马程序员 同步辅助类【CountDownLatch】、
- 利用 CountDownLatch 类实现线程同步
- 同步辅助类 CountDownLatch、CyclicBarrier作用
- 线程同步辅助类—CountDownLatch
- CountDownLatch 类是一个 同步计数器
- java同步工具类之CountDownLatch
- 在线LaTeX编辑器 - ShareLaTeX
- SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)
- opencsv方式读取csv文件,详解,示例
- 基于openwrt RT5350的uboot波特率修改
- [LeetCode] Sum of Two Integers(用位运算实现加法)
- 同步类CountDownLatch整理
- Android ViewAnimator及其子类
- java.util.Date和mysql日期之间转换
- invalidate和postInvalidate 的区别及使用
- hadoop fs -put上传失败
- redis菜鸟教程
- “(null)” is of a model that is not supported by this version of Xcode. Please use a different device
- 在web.xml中配置,使用配置类替代springmvc.xml和applicationContext.xml
- acpi 表中对spcr的parse来初始化串口