diff --git a/src/java.base/share/classes/java/lang/Thread.java b/src/java.base/share/classes/java/lang/Thread.java index 2297095b30d..4c7cf3019b6 100644 --- a/src/java.base/share/classes/java/lang/Thread.java +++ b/src/java.base/share/classes/java/lang/Thread.java @@ -1769,7 +1769,9 @@ public static boolean interrupted() { public boolean isInterrupted() { // use fully qualified name to avoid ambiguous class error if (com.ibm.oti.vm.VM.isJVMInSingleThreadedMode()) { - return isInterruptedImpl(); + synchronized (interruptLock) { + return isInterruptedImpl(); + } } return interrupted; } @@ -3013,7 +3015,9 @@ private void setPriority0(int newPriority) { } private void interrupt0() { - interruptImpl(); + synchronized (interruptLock) { + interruptImpl(); + } } private static void clearInterruptEvent() {