diff --git a/src/java.base/share/classes/java/lang/Thread.java b/src/java.base/share/classes/java/lang/Thread.java index 4dac486bee4..07b3c7c9bd2 100644 --- a/src/java.base/share/classes/java/lang/Thread.java +++ b/src/java.base/share/classes/java/lang/Thread.java @@ -457,19 +457,20 @@ public static void yield() { * Called before sleeping to create a jdk.ThreadSleep event. */ private static ThreadSleepEvent beforeSleep(long nanos) { - ThreadSleepEvent event = null; - if (ThreadSleepEvent.isTurnedOn()) { - try { - event = new ThreadSleepEvent(); + try { + ThreadSleepEvent event = new ThreadSleepEvent(); + if (event.isEnabled()) { event.time = nanos; event.begin(); - } catch (OutOfMemoryError e) { - event = null; + return event; } + } catch (OutOfMemoryError e) { + // ignore } - return event; + return null; } + /** * Called after sleeping to commit the jdk.ThreadSleep event. */ diff --git a/src/java.base/share/classes/jdk/internal/event/ThreadSleepEvent.java b/src/java.base/share/classes/jdk/internal/event/ThreadSleepEvent.java index ab9b377c0f3..283ba425977 100644 --- a/src/java.base/share/classes/jdk/internal/event/ThreadSleepEvent.java +++ b/src/java.base/share/classes/jdk/internal/event/ThreadSleepEvent.java @@ -30,14 +30,5 @@ */ public final class ThreadSleepEvent extends Event { - private static final ThreadSleepEvent EVENT = new ThreadSleepEvent(); - - /** - * Returns {@code true} if event is enabled, {@code false} otherwise. - */ - public static boolean isTurnedOn() { - return EVENT.isEnabled(); - } - public long time; }