保证线程安全的三个方面

            1.原子性:保证同一时刻该资源只能有一个线程访问修改,其他线程阻塞等待,例如Atomic包,锁
            2.可见性:一个线程对于主内存的数据操作对于其他线程是可见的
            3.有序性:一个线程观察其他线程中指令执行顺序,由于指令重排序存在,观察结果一般杂乱无序
                原子性: 互斥访问,Atomic包,CAS算法,Synchronized,Lock

                可见性:synchronized,volatile

                顺序性:happends-before

参考:https://www.cnblogs.com/xujie09/p/11694133.html

posted @ 2020-03-26 13:20  怀鑫  阅读(1282)  评论(0编辑  收藏  举报