-server多线程由于可见性导致死循环
-server运行
正确运行应该在睡眠2秒后调用getStop()以后停止循环,但是由于虚拟机性能的优化可能只在开始的时候第一次读取stop的值为false之后就不会在读取stop的值。
正确的方法应该在把private boolean stop改为 private voliate boolean stop,这样虚拟机就会每次都会去内存中读取stop的值了
-server运行
正确运行应该在睡眠2秒后调用getStop()以后停止循环,但是由于虚拟机性能的优化可能只在开始的时候第一次读取stop的值为false之后就不会在读取stop的值。
正确的方法应该在把private boolean stop改为 private voliate boolean stop,这样虚拟机就会每次都会去内存中读取stop的值了