出现线程安全问题的原因一般都是三个原因:
1、线程切换带来的原子性问题 解决办法:使用多线程之间同步 synchronized或使用锁(lock)。
2、缓存导致的可见性问题 解决办法:synchronized、volatile、LOCK,可以解决可见性问题
3、编译优化带来的有序性问题 解决办法:Happens-Before 规则可以解决有序性问题

Was this helpful?

0 / 0

发表回复 0

Your email address will not be published.