我有一个私有类变量,它被声明为ConcurrentModificationException的当迭代通过列表
private List<String> list= new ArrayList<String>();
我的应用程序抛出java.util.ConcurrentModificationException
当多个线程试图通过列表迭代
for (Iterator i = list.iterator(); i.hasNext();){
System.out.println(i.next()+"\n");
}
我期待建议通过最小的更改来避免此问题。这个类变量被这个类中的多个方法共享和使用。
考虑的javadoc听起来像OP需要使用synchronized关键字也明确地同步。所以只是改变这个变量来利用Collections.synchronizedList可能还不够。 – KumarM