Java在多线程环境下如何使用ArrayList

阅读 74

2022-03-21

ArrayList效率很高,但是是单线程的,线程不安全的。因此为了避免线程不安全,需要对ArrayList进行转换成
线程安全的。Collections中的synchronizedList可以解决这个问题。

 public static void main(String[] args) throws InterruptedException {
// List<Integer> list = new ArrayList<>();
       List<Integer> list = Collections.synchronizedList(new ArrayList<>());

     Runnable runnable = () -> {
         for (int i = 0; i < 10000; i++) {
             list.add(i);

         }
     };

     for (int i = 0; i < 1; i++) {
         new Thread(runnable).start();
     }

     Thread.sleep(500);
     System.out.println(list.size());
 }

精彩评论(0)

0 0 举报