• Java多线程 用join方法控制线程按顺序执行。


     学习java多线程,请同时参阅    Java多线程 信号量和屏障实现控制并发线程数量,主线程等待所有线程执行完毕1

    java多线程CountDownLatch简单测试

    测试代码如下:

    public class ThreadsTest {
    
    
        public static void main(String[] args) throws WriteException, IOException {
    
            List list = new ArrayList<>();
            // 模拟20个客户端访问
            for (int i=0;i<10;i++) {
                Runnable run = new Runnable() {
                    @Override
                    public void run() {
                        try {
                            for(int j=0; j<6;j++){
                                Thread.sleep(100);
                                System.out.println("--------j----threadName-----" + j + "====" + Thread.currentThread().getName());
                            }
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                        }
                    }
                };
                list.add(run);
            }
            System.out.println("------------都结束了?????????------------");
            for(int j=0;j 
    

    实际输出如下:

    ------------都结束了?????????------------
    --------j----threadName-----0====Thread-0
    --------j----threadName-----1====Thread-0
    --------j----threadName-----2====Thread-0
    --------j----threadName-----3====Thread-0
    --------j----threadName-----4====Thread-0
    --------j----threadName-----5====Thread-0
    --------j----threadName-----0====Thread-1
    --------j----threadName-----1====Thread-1
    --------j----threadName-----2====Thread-1
    --------j----threadName-----3====Thread-1
    --------j----threadName-----4====Thread-1
    --------j----threadName-----5====Thread-1
    --------j----threadName-----0====Thread-2
    --------j----threadName-----1====Thread-2
    --------j----threadName-----2====Thread-2
    --------j----threadName-----3====Thread-2
    --------j----threadName-----4====Thread-2
    --------j----threadName-----5====Thread-2
    --------j----threadName-----0====Thread-3
    --------j----threadName-----1====Thread-3
    --------j----threadName-----2====Thread-3
    --------j----threadName-----3====Thread-3
    --------j----threadName-----4====Thread-3
    --------j----threadName-----5====Thread-3
    --------j----threadName-----0====Thread-4
    --------j----threadName-----1====Thread-4
    --------j----threadName-----2====Thread-4
    --------j----threadName-----3====Thread-4
    --------j----threadName-----4====Thread-4
    --------j----threadName-----5====Thread-4
    --------j----threadName-----0====Thread-5
    --------j----threadName-----1====Thread-5
    --------j----threadName-----2====Thread-5
    --------j----threadName-----3====Thread-5
    --------j----threadName-----4====Thread-5
    --------j----threadName-----5====Thread-5
    --------j----threadName-----0====Thread-6
    --------j----threadName-----1====Thread-6
    --------j----threadName-----2====Thread-6
    --------j----threadName-----3====Thread-6
    --------j----threadName-----4====Thread-6
    --------j----threadName-----5====Thread-6
    --------j----threadName-----0====Thread-7
    --------j----threadName-----1====Thread-7
    --------j----threadName-----2====Thread-7
    --------j----threadName-----3====Thread-7
    --------j----threadName-----4====Thread-7
    --------j----threadName-----5====Thread-7
    --------j----threadName-----0====Thread-8
    --------j----threadName-----1====Thread-8
    --------j----threadName-----2====Thread-8
    --------j----threadName-----3====Thread-8
    --------j----threadName-----4====Thread-8
    --------j----threadName-----5====Thread-8
    --------j----threadName-----0====Thread-9
    --------j----threadName-----1====Thread-9
    --------j----threadName-----2====Thread-9
    --------j----threadName-----3====Thread-9
    --------j----threadName-----4====Thread-9
    --------j----threadName-----5====Thread-9
    都结束了

  • 相关阅读:
    Vue的学习补充
    索引失效情况
    2022年Java秋招面试必看的 | RabbitMQ 面试题
    【MindSpore易点通】如何将PyTorch源码转成MindSpore低阶APIP,并在Ascend芯片上实现单机单卡训练
    马斯克又一壮举 发射420颗卫星组建互联网
    记一次clickhouse手动更改分片数异常
    分享107个小清新ppt模板,总有一款适合您
    黑马JVM总结(二十三)
    RedHat上部署kubernetes dashboard 2.7
    【C++】函数参数扩展 ( 默认参数 | 默认参数定义规则 | 默认参数定义在参数列表末尾 )
  • 原文地址:https://blog.csdn.net/u013558123/article/details/127713975