关于线程空方法体死循环引用静态变量,无法获取变量最新值

前几天,划水群(901476449 )几个大佬正在划水,突然一段代码为各位大佬吹响了装13的号角。如下:

一般认为3秒过后必定死翘翘。当然我方菜鸟也这么认为。结果 呜呜呜~~ 吗的都tm两分钟了还在跑。。

之后经过大佬提(嘲)点(讽) ,添加关键字volatile即可

but why?

volatile 保证了不同线程对这个变量进行操作时的可见性,即一个线程修改了某个变量的值,这新值对其他线程来说是立即可见的。(实现可见性) 

以及内存模型相关

猜你喜欢

转载自blog.csdn.net/qq_36338555/article/details/103727179