保证线程安全的三个方面

Posted chx9832

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了保证线程安全的三个方面相关的知识,希望对你有一定的参考价值。

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

                可见性:synchronized,volatile

                顺序性:happends-before

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

以上是关于保证线程安全的三个方面的主要内容,如果未能解决你的问题,请参考以下文章

Java中如何保证线程安全性

问题整理(线程安全关键字)

什么是线程安全,怎样保证线程安全

为什么会有多线程?什么是线程安全?如何保证线程安全?(带详细例子)

如何使用多线程优化多查询复杂业务接口,并保证线程安全

如何使用多线程优化多查询复杂业务接口,并保证线程安全