CountDownLatch 控制多线程 让多个线程执行完后再依次做其他的
来源:互联网 发布:oracle数据库创建索引 编辑:程序博客网 时间:2024/05/21 12:46
package com.ps;
import java.util.concurrent.CountDownLatch;
public class TestRunnable implements Runnable{
private int tickets = 100;
String s = new String(" ");
CountDownLatch cdl = new CountDownLatch(10);//这里的10和下面要启动的线程数必须一样
@Override
public void run() {
// TODO Auto-generated method stub
while(tickets>0){
synchronized(s){
if(tickets>0){
try {
Thread.sleep(100);
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println(Thread.currentThread().getName() +"is saling tickets "+tickets--);
}
}
}
cdl.countDown();
}
public static void main(String[] args){
TestRunnable testRunnable = new TestRunnable();
for(int i=0;i<10;i++){
new Thread(testRunnable).start();
}
try {
System.out.println(testRunnable.cdl.getCount());
testRunnable.cdl.await();//如果不用countdownlatch的await控制,下面的操作会和多线程并行
System.out.println("等十个线程完后再做做其他的");
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
- CountDownLatch 控制多线程 让多个线程执行完后再依次做其他的
- CountDownLatch控制线程执行顺序
- JAVA多线程—CountDownLatch-一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待。
- CountDownLatch 控制多个线程执行顺序
- CountDownLatch使用countDown方法来触发其他等待线程再执行的问题
- 【Java多线程编程】主线程对其他线程的控制
- 使用 CountDownLatch 控制多个线程执行顺序
- CountDownLatch--控制三个线程执行顺序(三)
- Java 多线程控制 CountDownLatch
- 三个线程依次顺序执行
- CountDownLatch--一组线程完成后其他线程才执行(一)
- CountDownLatch--一组线程完成后其他线程才执行(二)
- Java多线程执行,主程序等待其他线程执行完成
- CountDownLatch,一个同步辅助类,在完成一组正在其他线程中执行的操作之前,它允许一个或多个线程一直等待
- 多线程编程(19) - 不使用同步工具, 手动协调线程依次执行
- java 多线程控制线程执行顺序
- 线程状态控制 CountDownLatch和CyclicBarrier的区别
- linux下,两个线程依次执行
- 这关又没过去
- 笔记:Gof设计模式--Decorator
- postgresql常用命令
- sohu2012年实习生笔试题
- 比较好的android博客
- CountDownLatch 控制多线程 让多个线程执行完后再依次做其他的
- 从linux平台移值数据库到windows平台
- C++中类的理解
- 产品经理常犯的七大错误
- ServletResponse的刷新头和禁止浏览器缓存头的使用
- 操作FILTER 的优化
- Windows64位系统注册表读取
- 字典树
- 黑马程序员_java银行调度管理系统