关于Collections.synchronizedList(List list)的使用

前言:
Java 中 ArrayList 和 LinkedList 都不是线程安全的,但可以通过 java.util.Collections.synchronizedList(List list) 方法,获取一个线程安全的 List 实例对象。
将非线程安全 List 对象,封装成一个线程安全的 List 对象,处理 List 上的并发性问题。类似一个工具类,减少开发人员的重复性工作。
测试代码:
关于Collections.synchronizedList(List list)的使用
关于Collections.synchronizedList(List list)的使用
关于Collections.synchronizedList(List list)的使用
控制台打印的信息是:
关于Collections.synchronizedList(List list)的使用
完全没问题!!!!

然后不使用Collections.synchronizedList来测试:
关于Collections.synchronizedList(List list)的使用
结果为:
关于Collections.synchronizedList(List list)的使用
因为线程不安全,导致数量没有200;


我想说的是Thread.join()方法:
该方法是当执行完该线程的操作后,再执行下面代码,如上图所示,当t1和t2执行完以后才执行打印语句:
关于Collections.synchronizedList(List list)的使用
如果想让t1和t2顺序执行,可以改成如下代码
关于Collections.synchronizedList(List list)的使用
本文参考链接:https://blog.csdn.net/weixin_38575051/article/details/94000044

相关文章: