Java NIO - CountDownLatch
来源:互联网 发布:广东高考难度 知乎 编辑:程序博客网 时间:2024/06/02 08:04
CountDownLatch如其所写,是一个倒计数的锁存器,当计数减至0时触发特定的事件。利用这种特性,可以让主线程等待子线程的结束。
下面开启两个线程,一个用来插入订单操作,一个用来模拟合并订单操作。
@Test
// @Transactional
public void testAutoMergeSplit03() throws Exception {
//初始化两条数据
int num = 20;
List<TbTrade> tbTrades = initTrade(num);
final MergeThread mt = new MergeThread();
mt.tbTrades = tbTrades;
countDownLatch = new CountDownLatch(2);
Thread insertThread = new Thread(new Runnable() {
@Override
public void run() {
try {
countDownLatch.await();
System.out.println(System.nanoTime() + "- mt.insert() start");
mt.insert();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
});
insertThread.start();
countDownLatch.countDown();
Thread mergeThread = new Thread(new Runnable() {
@Override
public void run() {
try {
countDownLatch.await();
System.out.println(System.nanoTime() + "- mt.merge() start");
mt.merge();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
});
mergeThread.start();
countDownLatch.countDown();
Thread.sleep(10000);
}
这样子就可以模拟一些多线程并发执行的场景。
1 0
- Java NIO - CountDownLatch
- Java CountDownLatch
- Java CountDownLatch
- Java CountDownLatch
- java CountDownLatch
- java countdownlatch
- java CountDownLatch
- Java CountDownLatch
- Java多线程之CountDownLatch
- Java多线程之CountDownLatch
- java 多线程 CountDownLatch用法
- Java多线程之CountDownLatch
- Java CountDownLatch 和 CyclicBarrier
- java-concurrent之CountDownLatch
- Java线程之CountDownLatch
- Java计数锁CountDownLatch
- Java之CountDownLatch使用
- Java CountDownLatch应用
- redis中数据持久化(四)
- HDU 4499 Cannon
- JavaSE学习笔记_19:Java-GUI
- 《Head First设计模式》 - 观察者模式
- "多米诺骨牌"问题的动态规划算法
- Java NIO - CountDownLatch
- VC实现当前程序退出后重启
- BZOJ 4010: [HNOI2015]菜肴制作
- 阶乘之和
- 第七周上机实践项目3:文件组织多个程序类
- Error C2893
- 剑指offer系列之38:判断是否是平衡二叉树
- c++第三次作业
- 重新编辑servlet后tomcat无需重启的方法