Java 多线程学习笔记二十一(CopyOnWriteArrayList)

内容来自B站【狂神说Java】多线程详解

内容

  • java.util.concurrent是java并发包,是关于并发编程的,Callable也是在这个包下。
  • 这个包下的CopyOnWriteArrayList就是线程安全的。
  • CopyOnWriteArrayList源码中有volatile修饰,private transient volatile Object[] array;

代码演示

package com.example.demo.thread.sync;

import java.util.concurrent.CopyOnWriteArrayList;

public class TestJUC {

    public static void main(String[] args) {
        CopyOnWriteArrayList<String> list = new CopyOnWriteArrayList<>();
        for (int i = 0; i < 20000; i++) {
            new Thread(() -> list.add(Thread.currentThread().getName())).start();
        }
        try {
            Thread.sleep(3000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        System.out.println("集合元素的数量:" + list.size());
    }

}

输出

集合元素的数量:20000
posted @ 2022-01-02 11:25  君子键  阅读(22)  评论(0)    收藏  举报