加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 抛出ConcurrentModificationException系统依赖

发布时间:2020-12-15 03:11:40 所属栏目:Java 来源:网络整理
导读:我正在使用Iterator处理一段代码,并在我从 Windows上的IDE运行程序时在第a行获取ConcurrentModificationException– LinkedList ll =new LinkedList(); . . . . . . Iterator iter = ll.iterator(); int i=0; while (iter.hasNext()) { // GrammarSection ag
我正在使用Iterator处理一段代码,并在我从 Windows上的IDE运行程序时在第a行获取ConcurrentModificationException–
LinkedList ll =new LinkedList();
  . . .
  . . . 
  Iterator iter = ll.iterator();
  int i=0;
   while (iter.hasNext()) {
       // GrammarSection agrammarSection = (GrammarSection) iter.next();  //a
       String s1 = (String) iter.next();
        ll.remove(i);
        i++;
   }

这是预期的,因为我在迭代时修改列表,因此失败快速迭代器抛出一个Concurrentmodification异常.但是,当我在unix中使用apache服务器运行此代码时,迭代器的下一个方法不会抛出任何异常.那么,并发修改异常是否依赖于操作系统级别?

解决方法

不,它不应该.无论如何它应该崩溃.

我想在不同的JVM上可能会有所不同,但根据official spec,链表上的迭代器应该是快速失败的.

操作系统与它无关.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读