AddAll导致ConcurrentModificationException

时间:2017-09-03 19:11:06

标签: java

为什么retrieveObjects.addAll会导致java.util.ConcurrentModificationException?它不会每次都发生,但偶尔抛出ConcurrentModificationException,我无法弄清楚原因。

public Set<Obj> retrieve(Vector2 pos, float radius) {
    Set<Obj> retrievedObjects = new HashSet<>();

    String[] grids = getGridsObjIsIn(pos, radius);

    for (String grid : grids) {
        if (objects.containsKey(grid)) {
            retrievedObjects.addAll(objects.get(grid));
        }
    }

    return retrievedObjects;
}

0 个答案:

没有答案