问题标签 [concurrentmodification]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
2627 浏览

java - 如何在 Java 中的链表上使用两个不同的迭代器?

我想使用链表来执行元素的提取和插入,尝试所有组合以进行启发式。链表对于这种类型的操作更有效。因为我想尝试所有可能的提取/插入对,所以我在列表上使用了两个不同的迭代器。这会引发“ConcurrentModificationException”。我怎样才能有效地执行此操作,而无需每次都重新遍历列表,因为这会破坏首先使用列表的全部目的?

这是代码的相关部分:

谢谢

0 投票
1 回答
1704 浏览

java - Java并发修改异常:如何处理?

我正在编写一个文本文件爬虫程序并不断收到 ConcurrentModificationException。我知道这与使用 Iterator 有关,但我不确定如何修复它。请帮忙!

例外是:

代码:

searchFile 方法的完整代码:

发生向量:

它1:

0 投票
3 回答
1628 浏览

java - 简单游戏中的 ConcurrentModificationException

我正在编写一个简单的贪吃蛇游戏。所以,我有一个更新线程,执行一个无限循环,更新所有游戏对象并重新绘制 JPanel。

现在,问题是当我调用myJFrame.repaint()它时,它可能正在另一个线程中执行。而当我绘画的时候,我显然必须得到物体的位置、速度等等……我知道异常来自paintComponent(),因为它没有被捕获。如您所见,while 循环嵌入在 try-catch 中。

我能做些什么呢?

这是一个例外:

谢谢你的帮助!

暗示

如果您尝试从 2 个不同的线程同时访问一个实例,则会引发 ConcurrentModificationException。至少我是这么听说的。

更多代码

0 投票
1 回答
116 浏览

c# - 在使用时对域对象进行更改

我们有一组域对象,可以在一个窗口中编辑并在另一个窗口中同时使用。确保对象始终处于有效状态,并且更改在提交之前对外界不可见。对象存储在存储库中(每个对象都有一个唯一的 ID)。

  1. 用户打开“运行”- 窗口(对对象 A 的只读访问)
  2. 用户打开“编辑”窗口(对对象 A 的读/写访问权限)
  3. 用户更改 UI 中的某些属性,但未单击应用
  4. 用户单击运行窗口中的“运行”按钮。运行操作应使用“旧”设置执行。
  5. 用户单击编辑窗口中的“应用”按钮并在运行窗口中运行。运行操作使用“新”设置执行。

我可以想到一些解决方案,但我对其中任何一个都不太满意:

  1. 从存储库中检出对象时,始终会返回一个克隆。如果希望存储更改,则必须将对象显式提交到存储库。这可能适用于小对象,但在对象模型很大的情况下,克隆所有内容可能不合理。
  2. 视图模型或模型存储中间更改并且在用户决定应该应用更改之前不会更改底层域对象。这听起来有点乏味,并且需要我们希望在域对象中拥有的视图模型中的大量验证规则。
  3. UI 不能直接作用于域对象。相反,当用户应用更改时,它们会更改可应用于域对象的 DTO。

请注意,只有一个并发编辑器,但可能有多个并发“阅读器”。此外,并发不会成为问题(从某种意义上说,在多线程环境中部分更新了对象)。

在提交更改之前,我们如何实现编辑域对象而不应用更改的模式?有什么我应该研究的框架吗?

0 投票
2 回答
90 浏览

java - 并发修改执行

我有一个正常的数据库调用,它从我的数据库中收集信息。我使用这些信息来创建我的对象(CallQueue)然后将这些对象添加到列表中,然后返回列表。

突然,我发现我最初的代码没有按预期工作,因为我创建了重复项,所以现在我试图取消正在创建的任何重复项!但有个问题!

我无法遍历我的列表并检查对象是否已经创建!

这是我的代码:

我从中得到的执行是:

我试图在ConcurrentModificationException 查找执行

谁能帮我解决这个问题?

0 投票
4 回答
8017 浏览

java - 使用迭代器和 iterator.remove() 时出现 ConcurrentModificationException

错误:

这里有什么问题?

0 投票
3 回答
4559 浏览

java - 遍历 ArrayList 时并发修改异常

当我使用 temp = iterator.next() 时,排序方法会导致并发修改错误。你能帮我解决并发修改错误吗?我为整个班级提供了代码,但我只是在尝试完成排序方法。在此先感谢您的帮助。

我必须对arraylist 中的所有数组进行排序。

0 投票
3 回答
5625 浏览

java - 错误:java.util.ConcurrentModificationException

我有一个网格,用户从中选择行,当单击一行时,它的 id 将发送到我的操作类AddBookToSession.java,然后将列表返回到我的 jsp 页面invoice.jsp

java.util.ConcurrentModificationException当用户从我的网格中选择一行时, 我收到错误。

我读了这个类似的问题,但我仍然无法解决我的问题。

我的问题是:为什么我收到java.util.ConcurrentModificationException错误以及如何解决这个问题。请帮我解决这个问题。

控制台错误:

发票.jsp

AddBookToSession.java

0 投票
5 回答
11404 浏览

java - Avoiding TreeMap ConcurrentModificationException?

I am calling function that returns TreeMap instance, and in the calling code I wanted to modify the TreeMap. However, I am getting a ConcurrentModificationException.

Here is my code:

And my calling code is:

0 投票
2 回答
845 浏览

java - 并发异常

我在 run() 方法中收到 ConccurentModificationException。我尝试了以下,但没有奏效: