参考:https://blog.csdn.net/jiaochunyu1992/article/details/51177373/
版权声明:本文为CSDN博主「程序员科比」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/jiaochunyu1992/article/details/51177373/
首先说一下什么是线程不安全:
线程安全就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据
List接口下面有两个实现,一个是ArrayList,另外一个是vector。
从源码的角度来看,因为Vector的方法前加了,synchronized 关键字,也就是同步的意思,sun公司希望Vector是线程安全的,
而希望arraylist是高效的,缺点就是另外的优点
原理&