1、原子性
synchronized关键字
EntryList中的所有线程会争抢owner的处理
2、可见性
这里的线程有主线程和t线程,两个线程都会对run进行读和写的。
volatile关键字适用于一个写线程多个读线程的情况。
这个代码可以中途停下来
因为System.out.println()中有synchronized关键字。
3、有序性
有序性变量都指的是成员变量。
解决方式:
解决方法:
使用volatile修饰
4、CAS和原子类
旧值与结果比较完,如果不一样的话,就把结果赋值给共享变量。
5、synchronized优化