各路大神帮我看看java同步问题,为什么我这样写就锁不住了?
Thff中的那个同步方法仅在相同实例下有效,你第一种写法在执行时会有两个Thff实例,如果希望在这种场景下也能实现同步执行,加个静态object字段,然后在ni方法中做lock。
从哪里看到是用了两个实例的?劳烦大神指点迷津!谢谢了!
@梦再笑: 上面那个RN的run实现中你是不是new了Thff,在你main方法中两个thread跑的时候最终到run这里不就是new了两次Thff么?
下面那个Rn的写法,Thff变成了字段,在main方法中你RN只实例化一次,所以这里Thff就只有一个实例。
@Daniel Cai: 大神就是大神,谢谢了哈。原来是方法再次调用出了问题,好隐蔽啊!!