多线程测试时的辅助类--CountDownLatch
多线程时,很多时候由于mian线程与多线程结束时间不可控,造成无法测试
辅助测试类---CountDownLatch
我看的视频教程匿名内部类无法使用外部的变量,所以CountDownLatch定义为了final,但是我现在jdk12似乎没问题
/**
* 多线程环境下运用CountDownLatch测试五种模式
* @author 小帆敲代码
*
*/
public class Test02 {
public static void main(String[] args) throws Exception {
long start =System.currentTimeMillis();
int threadNum=10;
CountDownLatch countDownLatch=new CountDownLatch(threadNum);
for(int i=0;i<10;i++) {
//lambda
// new Thread(()-> {
// for(int j=0;j<100000;j++) {
//// Object o=Demo04.getInstance();
// Object o=Demo05.INSTANCE;
// }
// countDownLatch.countDown();//计数-1
// }).start();
// }
new Thread(new Runnable() {
@Override
public void run() {
for(int j=0;j<100000;j++) {
// Object o=Demo04.getInstance();
Object o=Demo05.INSTANCE;
}
countDownLatch.countDown();//计数-1
}
}).start();
}
countDownLatch.await();//mian线程阻塞直至计数为0
long end =System.currentTimeMillis();
System.out.println("共计:"+(end-start));
}
}
最新文章
- NoSql 中Mongodb数据库的使用
- 在VS中添加lib库的三种方法
- 修改phpMyAdmin中的默认1440超时时间
- BZOJ 1901 Zju2112 Dynamic Rankings ——树状数组套主席树
- thread_CyclicBarrier回环栅栏
- 面向对象的static关键字(类中的static关键字)
- SQL Server 2008 数据库日志文件丢失处理方法
- algorithm@ dijkstra algorithm &; prim algorithm
- IE6,IE7下滚动条没有生效解决方法
- centos安装如何选择安装包
- ExtJs4 笔记(12) Ext.toolbar.Toolbar 工具栏、Ext.toolbar.Paging 分页栏、Ext.ux.statusbar.StatusBar 状态栏
- 计算器之webservice实现
- Java源码解读(一)——HashMap
- python3+selenium入门02-操作火狐浏览器
- js 字符串,new String() 与 String()
- Intellij IDEA 为常用代码添加快捷代码,补全代码
- C++基础学习一(基础之基础)
- RESTframwork之视图view
- Java虚拟机--Java内存区域的划分和异常
- HDU 2097 Sky数 进制转换
热门文章
- async,await执行流看不懂?看完这篇以后再也不会了
- Windows DC域控由server08r2升级至server2016测试
- Python 【面试强化宝典】
- [javascript]JS获取当前时间戳的方法
- Netty入门与实战教程总结分享
- 解决报错:JPA-style positional param was not an integral ordinal;
- 对JavaScript中的this的理解
- amba H2平台用PWM控制LCD背光
- php +go关键字实现协程
- 2019-2020-1 20199328《Linux内核原理与分析》第六周作业