Duplicate :
|
|
Relates :
|
|
Relates :
|
After the change JDK-7161732 (which came in 8-b42) the SA on windows cannot inspect the VM threads. It appears that moving the _thread_id variable broke an undocumented assumption in WindbgX86Thread.java in the SA: // another hack here is that we use sys thread id instead of handle. // windbg can't get details based on handles it seems. // I assume that osThread_win32 thread struct has _thread_id (which // sys thread id) just after handle field. this.sysId = (int) addr.addOffsetTo(debugger.getAddressSize()).getCIntegerAt(0, 4, true); Now that the system thread id is no longer located right after the thread HANDLE this obviously won't work. This breaks for example "jstack -F <pid>" which is the common way to inspect a hung VM on Windows. ILW=HLH => P2 I=H SA on windows is basically useless for real usage L=L not super-common to use, but "jstack -F" is an exported interface W=H no known work-around
|