RFR: 8308588: Unnecessary synchronized on GTKStyle#ICONS_MAP can be removed

Damon Nguyen dnguyen at openjdk.org
Wed Aug 28 18:20:20 UTC 2024


On Wed, 28 Aug 2024 08:54:39 GMT, Abhishek Kumar <abhiscxk at openjdk.org> wrote:

> `static final Map<String,GTKStockIcon> ICONS_MAP` is modified only in `static` block. Then [com.sun.java.swing.plaf.gtk.GTKStyle#get](https://github.com/kumarabhi006/jdk/blob/73f7a5f15dbba54a98f3916ff1190520ac07874d/src/java.desktop/share/classes/com/sun/java/swing/plaf/gtk/GTKStyle.java#L892) method read from it within `synchronized (ICONS_MAP)` block. As this map is read-only and all its content is initialized in static block we can safely remove synchronized from get call.

I remember simply testing this change when originally triaging this. How did you test this change for stability?

-------------

PR Review: https://git.openjdk.org/jdk/pull/20741#pullrequestreview-2266970672


More information about the client-libs-dev mailing list