出现线程安全问题的原因一般都是三个原因: 1、线程切换带来的原子性问题 解决办法:使用多线程之间同步 synchronized或使用锁(lock)。 2、缓存导致的可见性问题 解决办法:synchronized、volatile、LOCK,可以解决可见性问题 3、编译优化带来的有序性问题 解决办法:Happens-Before 规则可以解决有序性问题 Was this helpful? YesNo 0 / 0 上一篇: Java中获得一个类的类对象有哪些方式? 下一篇: Java中volatile有什么用? volatile 的应用场景? 发表回复 取消回复0 Your email address will not be published. 在此浏览器中保存我的显示名称、邮箱地址和网站地址,以便下次评论时使用。