立即学习:https://edu.csdn.net/course/play/26270/326857?utm_source=blogtoedu
- 线程安全:一个类被多个线程以任意方式同时调用,且不需要外部额外同步和协同的情况下,仍然保持内部数据正确且表现正确的行为,那么这个类是线程安全的。
- --不是原子操作,AtomInteger的操作是原子操作。
- 线程安全等级1:不可变类,一定是线程安全的,final修饰的,枚举类
- final只是保证值不能被覆盖。final创建的对象对所有线程完全可见,不会在创建过程中被其它线程中断并修改。
- 线程安全等级2-线程安全类:线程安全类的任意方法操作都不会是该对象的数据处于不一致或者数据污染的情况。
- 线程安全等级3-有条件的线程安全类:对于单独的访问类的方法,是线程安全的,但对于某些复合操作,读需要外部类来实现线程安全。
- 线程安全等级4-线程兼容类:正确使用同步、用锁或synchronized控制同步访问
- 线程安全等级5-线程对立类:变量在多线程下会被访问和修改。尽量在多线程中少用或修改静态变量。