Skip to content

Use ConcurrentHashMap for JVM target#39

Merged
ychescale9 merged 4 commits intomainfrom
yc/concurrent-hash-map-for-jvm
Feb 23, 2024
Merged

Use ConcurrentHashMap for JVM target#39
ychescale9 merged 4 commits intomainfrom
yc/concurrent-hash-map-for-jvm

Conversation

@ychescale9
Copy link
Copy Markdown
Member

@ychescale9 ychescale9 commented Apr 30, 2023

#38 attempts to use AndroidX Collection KMP on JVM and iOS (and a few others) for the thread-safe mutable map implementation to address JVM performance issue with Stately.

However both our basic JvmConcurrencyTest and lincheck surfaced ConcurrentModificationException in AndroidX Collection's SimpleArrayMap.

This PR instead use ConcurrentHashMap for JVM, and Stately for all other targets.

Our JvmConturrencyTest is passing but Lincheck's Model checking test still surfaces some linearizability issues with our RealCache implementation, though it's not a regression. #47

@ychescale9 ychescale9 force-pushed the yc/concurrent-hash-map-for-jvm branch from 0e55e40 to a490b71 Compare May 6, 2023 04:27
@ychescale9 ychescale9 force-pushed the yc/concurrent-hash-map-for-jvm branch 2 times, most recently from b6ca1b1 to f2e489a Compare May 27, 2023 06:44
@ychescale9 ychescale9 force-pushed the yc/concurrent-hash-map-for-jvm branch from f2e489a to bfa042f Compare July 6, 2023 10:44
@ychescale9 ychescale9 force-pushed the yc/concurrent-hash-map-for-jvm branch from bfa042f to 76e44e2 Compare February 23, 2024 12:01
@ychescale9 ychescale9 marked this pull request as ready for review February 23, 2024 12:02
@ychescale9 ychescale9 merged commit 86aa406 into main Feb 23, 2024
@ychescale9 ychescale9 deleted the yc/concurrent-hash-map-for-jvm branch February 23, 2024 12:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant