RFR: 8308588: Unnecessary synchronized on GTKStyle#ICONS_MAP can be removed
Tejesh R
tr at openjdk.org
Thu Aug 29 05:01:19 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.
Yes, it looks like redundant though. One slight concern is that, does GTKStockIcon has any role to play with synchronized block? If that doesn't has anything with synchronization then its good to go.
-------------
PR Review: https://git.openjdk.org/jdk/pull/20741#pullrequestreview-2267682324
More information about the client-libs-dev
mailing list