
问题总结
zhongyuankai
done
展开
-
java.lang.IllegalMonitorStateException的解决方法
java.lang.IllegalMonitorStateException是在调用object的wait和notify,notifyAll方法的时候可能会出现的异常;今天碰到了这个异常就打算弄懂这部分内容。在调用上述三个方法的时候,线程必须获得该对象的对象级别锁,换句话说,出现这个异常的原因是因为,调用wait和notify,notifyAll的对象没有在同步方法(synchronized...原创 2020-03-10 14:57:40 · 2248 阅读 · 0 评论 -
ArrayBlockingQueue源码中为什么方法要用局部变量引用类变量
先上图当我看到这代码的时候,很奇怪为什么不直接用 this.items[putIndex] = x; 难道这样做效率更高?并不仅仅是 ArrayBlockingQueue ,还有 很多集合类,只要涉及到 set ,put 方法的 ,基本都是这样类似的 做法;先解释这个问题,可以从底层的字节码入手,看个例子;final Object[] items = new Object[10...原创 2020-03-10 11:38:38 · 2004 阅读 · 0 评论