网站建设 事项,互联网公司排名朗玛,有什么好的建站公司,软件培训机构今天又中彩了, 原本很简单的多线程程序, 蓦然间冒了个java.lang.IllegalMonitorStateException , 杀了个措手不及. 一直纳闷, 为什么为什么? 查资料说该异常由于对象未获取得到Lock就试图操作Lock. 再细细源码, 原来不不小将lock.lock()写错为lock.tryLock(). 坑爹…今天又中彩了, 原本很简单的多线程程序, 蓦然间冒了个java.lang.IllegalMonitorStateException , 杀了个措手不及. 一直纳闷, 为什么为什么? 查资料说该异常由于对象未获取得到Lock就试图操作Lock. 再细细源码, 原来不不小将lock.lock()写错为lock.tryLock(). 坑爹啦! 充足的睡眠是很关键的, 让你少做错事! 稳定的心态也是很关键的, 让你少走弯路!public boolean put(String value) {boolean result false;lock.tryLock();try {if (queue.size() config.queueSize) {queue.addLast(value);result true;} else {result putToBuffer(value);}if (result) {notEmpty.signalAll();}} catch (IOException e) {logger.error(文件缓存添加元素错误, e);} finally {lock.unlock();}return result;}