On Tue, 4 Jun 2024 13:31:50 GMT, Inigo Mediavilla Saiz <d...@openjdk.org> wrote:
>> Print the stack traces of mounted virtual threads when calling `jcmd <pid> >> Thread.print`. > > Inigo Mediavilla Saiz has updated the pull request incrementally with one > additional commit since the last revision: > > Incorporate @tstuefe's remarks Current status: I'm leaving the PR without additional indentation for the Vthread stack on purpose because I plan to add a new PR to include @tstuefe's changes (unless those changes get merged very quickly) @AlanBateman I've included the vthread's name in the output as per your suggestion. This what the output looks like at the moment: "ForkJoinPool-1-worker-1" #21 [28163] daemon prio=5 os_prio=31 cpu=7320.43ms elapsed=7.39s tid=0x000000012d02f210 [0x0000000171b31000] Carrying virtual thread #20 Thread: 0x000000012d02f210 [0x6e03] State: _at_safepoint _at_poll_safepoint 1 JavaThread state: _thread_blocked at jdk.internal.vm.Continuation.run(java.base@23-internal/Continuation.java:248) at java.lang.VirtualThread.runContinuation(java.base@23-internal/VirtualThread.java:245) at java.lang.VirtualThread$$Lambda/0x000003c001046740.run(java.base@23-internal/Unknown Source) at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.compute(java.base@23-internal/ForkJoinTask.java:1726) at java.util.concurrent.ForkJoinTask$RunnableExecuteAction.compute(java.base@23-internal/ForkJoinTask.java:1717) at java.util.concurrent.ForkJoinTask$InterruptibleTask.exec(java.base@23-internal/ForkJoinTask.java:1641) at java.util.concurrent.ForkJoinTask.doExec(java.base@23-internal/ForkJoinTask.java:507) at java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(java.base@23-internal/ForkJoinPool.java:1489) at java.util.concurrent.ForkJoinPool.scan(java.base@23-internal/ForkJoinPool.java:2071) at java.util.concurrent.ForkJoinPool.runWorker(java.base@23-internal/ForkJoinPool.java:2033) at java.util.concurrent.ForkJoinWorkerThread.run(java.base@23-internal/ForkJoinWorkerThread.java:189) Mounted virtual thread "Dummy Vthread" #20 at Main$FunkyLambda.compute(Main.java:38) at Main$FunkyLambda.computeFunkyName(Main.java:31) at Main$$Lambda/0x000003c001000c50.run(Unknown Source) at java.lang.Thread.runWith(java.base@23-internal/Thread.java:1588) at java.lang.VirtualThread.run(java.base@23-internal/VirtualThread.java:329) at java.lang.VirtualThread$VThreadContinuation$1.run(java.base@23-internal/VirtualThread.java:209) at jdk.internal.vm.Continuation.enter0(java.base@23-internal/Continuation.java:320) at jdk.internal.vm.Continuation.enter(java.base@23-internal/Continuation.java:312) ------------- PR Comment: https://git.openjdk.org/jdk/pull/19482#issuecomment-2147589255