• Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Concurrent Modification Exception??

 
Matthew Ballard
Greenhorn
Posts: 4
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
i am aware what the deal is with threads/CME but why is this code throwing an exception:




the method successors, takes the current state and adds all possible moves (making the move and saving the state) to an ArrayList and returns an Iterator. the line thats showing up as the trouble maker is the assignemnt, Node successor = (Node) it.next();.
i'm sure i've used this sort of thing in a while loop before and not had these issues.

any help is highely valued,
thanks - matt...
 
Henry Wong
author
Marshal
Pie
Posts: 22124
88
C++ Chrome Eclipse IDE Firefox Browser Java jQuery Linux VI Editor Windows
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
In a nutshell, the CME is thrown when you try to modify the container, while still iterating through the same container. (You can delete the current item through, requested through the iterator) There might be something within the loop that is calling something that is changing the same container that you are trying to iterate through.

Henry
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic