In the private `close()` method of SharedImageReader (called from the public `ImageReader#close()` method) the nodes cache is cleared with the `OPEN_FILES` map locked.
However the `nodes` cache is otherwise only read/written while the `SharedImageReader` instance is locked.
This code around this still needs to synchronize on the `OPEN_FILES` map, but I think the nodes cache should be cleared separately after unlocking the `OPEN_FILES` map and resynchronizing the shared reader.
However the `nodes` cache is otherwise only read/written while the `SharedImageReader` instance is locked.
This code around this still needs to synchronize on the `OPEN_FILES` map, but I think the nodes cache should be cleared separately after unlocking the `OPEN_FILES` map and resynchronizing the shared reader.
- relates to
-
JDK-8360037 Refactor ImageReader in preparation for Valhalla support
-
- Open
-