I have a Java application that I run from a console which in turn executes an another Java process. I want to get a thread/heap dump of that child process.
On Unix, I could do a kill -3 <pid>
but on Windows AFAIK the only way to get a thread dump is Ctrl-Break in the console. But that only gives me the dump of the parent process, not the child.
Is there another way to get that heap dump?
You can use jmap
to get a dump of any process running, assuming you know the pid
.
Use Task Manager or Resource Monitor to get the pid
. Then
jmap -dump:format=b,file=cheap.hprof <pid>
to get the heap for that process.