Linux安全网 - Linux操作系统_Linux 命令_Linux教程_Linux黑客

会员投稿 投稿指南 本期推荐:
搜索:
您的位置: Linux安全网 > Linux编程 > » 正文

java.util.ConcurrentModificationException异常处理

来源: Nonetracer 分享至:
    测试程序时,报java.util.ConcurrentModificationException异常。google后发现,是由于Iterator表示的哈希表变化造成的,代码如下:
Iterator<Entry<?, ?>> iterator = hash.entrySet();
while (iterator.hasNext()) {
  ......
}
在执行过程中,其他部分执行了hash.put或hash.remove,造成hash变化,这样就出现该异常了。另外,使用iterator.remove()可以直接删除当前项。
    解决方法是,避免多个地方同时操作hash对象,如果必须这样,就加个lock判断:
if (!isLocking())
  执行



Tags:
分享至:
最新图文资讯
1 2 3 4 5 6
相关文章列表:
验证码:点击我更换图片 理智评论文明上网,拒绝恶意谩骂 用户名:
关于我们 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 发展历史