Core concept
ConcurrentHashMap map = new ConcurrentHashMap<>();
map.putIfAbsent("a", 1);
map.compute("a", (k, v) -> v == null ? 1 : v + 1); Advertisement
How it works
Iteration weakly consistent.
Advertisement
Trade-offs + gotchas
Concurrent lookups. Caches.