【漫画】JAVA并发编程 如何解决可见性和有序性问题
原创声明:本文来自公众号【胖滚猪学编程】,以漫画形式让编程so easy and interesting,转载请注明出处! 在上一篇文章并发编程三大源头中,我们初识了并发编程的三个bug源头:可见性、原子性、有序性。明白了它们究竟为什么会发生,那么今天我们就来聊聊如何解决这三个问题吧。 序幕 Happens-Before是什么? A Happens-Before B 意味着 A 事件对 B 事件来说是可见的,无论 A 事件和 B 事件是否发生在同一个线程里。例如 A 事件发生在线程 1 上,B 事件发生在线程 2 上,Happens-Before 规则保证线程 2 上也能看到 A 事件的发生。 Happens-Before的作用 原创声明:本文来自公众号【胖滚猪学编程】,以漫画形式让编程so easy and interesting,转载请注明出处! happens-before原则非常重要,它是判断线程是否安全的主要依据,依靠这个原则,我们就能解决在并发环境下可见性和有序性问题。比如某天老板问你“胖滚猪,我这段并发代码会有线程安全问题吗”,那么你可以对照着happens-before...
