SPECS
Traces the full path of a HashMap.put() call: computing hashCode (cyan), applying the perturbation function h^(h>>>16) (purple sparkle), calculating the bucket index via (n-1)&hash (yellow), tail-inserting into the chain (blue), and finally treeifying a bin of 8 nodes into a red-black tree.
Similar Sequences
Visualizes the NIO ByteBuffer state machine with four sliding pointers: position, limit, capacity, and mark. Animates through allocate, write, flip, get, clear, and compact operations — each changing the pointer positions and buffer color state.
Shows how ConcurrentHashMap performs a lock-free cooperative resize. When the old table overflows, each slot is stamped with a ForwardingNode (red). Multiple threads claim separate stride segments and concurrently migrate entries to the new doubled array via CAS, until all slots are moved and the new table goes live.
Shows the full lifecycle of a DirectByteBuffer in a split-screen view. The left side is the JVM heap (orange); the right is Native Memory (deep blue). allocateDirect() creates a heap reference and bridges to native memory. When the reference is GC-eligible, a ghost-like Cleaner (PhantomReference) appears and sweeps the native memory, freeing it without GC involvement.