diff --git a/internal-api/src/demos/datadog-hashtable.html b/internal-api/src/demos/datadog-hashtable.html new file mode 100644 index 00000000000..a669cdb69d9 --- /dev/null +++ b/internal-api/src/demos/datadog-hashtable.html @@ -0,0 +1,2142 @@ + + + + + + + Hashtable demo + + + + +
+ + + + +
+

Hashtable demo

+ Animated walkthrough of datadog.trace.util.Hashtable from + dd-trace-java. + +
+ +
+ +
+ + + +
+
+

+

+

+
!
+ +
+
+ + Java + +
+

+        
+ +
+ +

+
+ +
+ + +
+ + +
+
+ +
+
+
Current operation
+
size
+
buckets
+
load
+
+ +
+
key input
+ +
keyHash
+ +
bit mask
+ +
bucket
+
+ +
+
+
Hashtable.Entry[] bucketsfixed · no resize
+ +
+
+ + +
+
+
+ +
+
+

API map

Choose the smallest useful surface

+

D1 and D2 own size accounting. Support exposes the chain mechanics for custom higher-arity entries; its caller owns size and capacity policy.

+
+
+
+
+
+
+ +
+
+

Trace it in the checkout

+

Every animation maps to current source.

+

The visual table uses eight buckets for readability. Production call sites choose their own fixed capacities—such as 64 tag buckets or a scaled aggregate working set.

+
+ +
+ +
+ + + +