随笔分类 - java多线程编程
摘要:场景描述:多线程输出1到100,对静态Integer对象加锁,synchronized代码块中操作Integer对象,发生线程安全问题(数据重复) 代码: 运行结果: 从运行结果中可以发现发生了线程安全问题,为什么呢?为什么synchronized无效了。 我的排查思路: 1、因为没有进行任何的额外
阅读全文
摘要:1.sleep()方法 在指定时间内让当前正在执行的线程暂停执行,但不会释放“锁标志”。不推荐使用。 sleep()使当前线程进入阻塞状态,在指定时间内不会执行。 2.wait()方法 在其他线程调用对象的notify或notifyAll方法前,导致当前线程等待。线程会释放掉它所占有的“锁标志”,从
阅读全文