8229829: java/lang/management/ThreadMXBean/Locks.java fails with java.lang.RuntimeException: Thread WaitingThread is at WAITING state but is expected to be in Thread.State = WAITING

Reviewed-by: sspitsyn, dholmes
This commit is contained in:
Alex Menkov 2020-05-19 14:46:20 -07:00
parent 939c0a46a7
commit dc3843919e

View File

@ -91,7 +91,9 @@ public class Locks {
long tid = t.getId();
Thread.State actualState = TM.getThreadInfo(tid).getThreadState();
if (!actualState.equals(expectedState)) {
if (expectedState.equals(Thread.State.BLOCKED)) {
if (expectedState.equals(Thread.State.BLOCKED) ||
expectedState.equals(Thread.State.WAITING))
{
int retryCount = 0;
printStackTrace(t);
do {