线程安全:
1. 概念:提供数据访问保护,多线程访问时,采用了锁机制,当线程访问数据时,进行保护,直至访问完毕后,其他线程才能访问。(不会出现数据污染和不一致)
2. 关键:多个线程并发操作时,修改某个变量的值,不会出错;
3. 目的:在单位时间内某个线程操作的是同样的数据
4. 锁机制:synchronized或lock对象,使用了该关键字会降低性能
线程不安全:
1. 概念:不提供数据访问保护(有可能多个线程更改数据,数据污染等)
2. 关键:多个线程并发操作时,修改某个变量值,很容易出错;
3. 线程同步:当多个线程共享资源时,需要确定资源每一时刻一个线程占用。
线程安全与线程不安全的使用:
1. ArrayList和Vector:前者线程不安全,后者线程安全;
使用:多个线程操作一个对象时,使用安全的vector;否则使用不安全的arrayList;