Map issues.Note
This utility class is for internal use only. It can be removed at any time.
| Access | Constructor and Description |
|---|---|
| private |
| Modifier and Type | Method and Description |
|---|---|
| public static int | Returns: the initial capacity for theMapthe expected size expectedSize)This is a temporary workaround for Java 8 issue https://bugs.openjdk.org/browse/JDK-8186958. |
| public static <K, V> V | Returns: the current (existing or computed) value associated with the specified key, or null if the computed value is nullthe ConcurrentHashMap instance map, K key with which the specified value is to be associated key, Function<K, V> the function to compute a value mappingFunction)This is a temporary workaround for Java 8 specific performance issue https://bugs.openjdk.org/browse/JDK-8161372. |
| MapUtils | back to summary |
|---|---|
| private MapUtils() | |
| calculateInitialCapacity | back to summary |
|---|---|
| public static int calculateInitialCapacity(int expectedSize) This is a temporary workaround for Java 8 issue https://bugs.openjdk.org/browse/JDK-8186958. Fix is available in Java 19.
Calculate the initial capacity for the
| |
| computeIfAbsent | back to summary |
|---|---|
| public static <K, V> V computeIfAbsent(Map<K, V> map, K key, Function<K, V> mappingFunction) This is a temporary workaround for Java 8 specific performance issue https://bugs.openjdk.org/browse/JDK-8161372. Fix is available in Java 9. ConcurrentHashMap.computeIfAbsent(k,v) locks when k is present. Add pre-screen before locking inside computeIfAbsent. Note This utility is not for a general purpose usage. Carefully consider the removal operations from the map. If you have many remove operations that are critical, do not use this pre-screening. | |