On 24/01/2026 05:55, Jianbin Chen wrote:
:

I constructed the Executor directly with Executors.newVirtualThreadPerTaskExecutor(); however, the run results still show that the pooled virtual‑thread behavior outperforms the non‑pooled virtual threads.

This looks like it is benchmarking Thread.sleep so a different topic to that of libraries that are caching objects in thread locals.

For the Thread.sleep test then it would easier to discuss if converted to a JMH benchmark as there are warmup issues in the test you included. Also just to note that the Thread.sleep implementation has changed significantly changed since JDK 21 so you will see very different results with JDK 25 runs (some of the messages in the discussion speak of JDK 21, the subject line in the mails say "JDK 25", so I'm guessing you might be testing both).

-Alan

Reply via email to