-Djdk.tracePinnedThreads
Alan Bateman
Alan.Bateman at oracle.com
Sun May 15 05:28:01 UTC 2022
On 13/05/2022 18:41, Cay Horstmann wrote:
> I re-read the section on the jdk.tracePinnedThreads sysprop in
> https://openjdk.java.net/jeps/425:
>
> "The system property jdk.tracePinnedThreads triggers a stack trace
> when a thread blocks while pinned."
>
> I interpreted this to expect a stack trace whenever a thread blocks
> while pinned.
>
> Since that's not been my experience, I ran a simple program that
> spawned ten virtual threads, each acquiring the same monitor. With
> -Djdk.tracePinnedThreads=full, I got one stack trace and not ten. Of
> course, one is enough, so I guessed this is by design. And then I
> discovered java.lang.PinnedThreadPrinter.
>
> It might be good to clarify the JEP. "Recently seen duplicates are not
> printed."
The system property jdk.tracePinnedThreads is somewhat rudimentary but
it does attempt to suppress duplicate stack traces. In your example it
might be annoying to have the same stack trace printed 10 times. TBD
where this system property will be documented but it will need to make
it clear that duplicates are suppressed. We can look at making this
clearer in the JEP too.
-Alan
More information about the loom-dev
mailing list