多线程16:CopyOnWriteArrayList
JUC并发包下的安全数组
1 package com.thread.syn; 2 3 import java.util.concurrent.CopyOnWriteArrayList; 4 5 //测试JUC安全类型的集合 6 public class TestJUC { 7 public static void main(String[] args) { 8 CopyOnWriteArrayList<String> list = new CopyOnWriteArrayList<String>(); 9 for (int i = 0; i < 10000; i++) { 10 new Thread(() -> { 11 list.add(Thread.currentThread().getName()); 12 }).start(); 13 } 14 try { 15 Thread.sleep(3000); 16 } catch (InterruptedException e) { 17 e.printStackTrace(); 18 } 19 20 System.out.println(list.size()); 21 } 22 } 23 24 结果: 25 10000
看下源码: