これが私のコードです:
// eventList is a LinkedList
public void run() {
Iterator<Event> it = eventList.iterator();
int size = eventList.size();
while(size > 0) {
while(it.hasNext()) {
Event e = it.next(); //flaged line
if(e.ready()) {
System.out.println(e);
e.action();
eventList.remove(e);
--size;
}
}
}
}
エラーjava.util.ConcurrentModificationException
は、フラグが並んでいる場所 ( ) でスローされEvent e = it.next();
ます。その例外がスローされる理由を明らかにする私のコードに誤りがありますか?