Example files

Article: https://youdozi.github.io/en/posts/2026-10-31-virtual-threads-jdk21-jdk25/

Extract into a new empty directory and run commands from that directory.

Environment
HotSpot JDK 21 or 25 including JFR; matching javac/java. Locally observed with Temurin 21.0.13+9 and 25.0.5+8 on macOS AArch64, without preview flags.

Commands
javac --release 21 VirtualThreadProbe.java
java VirtualThreadProbe monitor
java VirtualThreadProbe plain

Scope
Creates monitor.jfr and plain.jfr in a fresh directory and counts worker-specific pinning events for a synthetic 100 ms sleep. Refuses existing destinations. No network/DB requests, throughput/latency comparison, carrier-limit tuning, production migration or remaining native-path verification.

Read the article for outputs, conditions and failure cases. PROVENANCE.json records the source and file hashes; hashes establish identity, not correctness.
