8242792: interval < flushInterval is always false in jdk.jfr.internal.RequestEngine#setFlushInterval

Reviewed-by: egahlin
This commit is contained in:
Denghui Dong 2020-04-23 15:48:55 +02:00
parent 3b9b4b2fdc
commit 5bb821771e
2 changed files with 4 additions and 3 deletions

View File

@ -39,7 +39,7 @@ import jdk.jfr.internal.handlers.EventHandler;
public final class JVM {
private static final JVM jvm = new JVM();
// JVM signals file changes by doing Object#notifu on this object
// JVM signals file changes by doing Object#notify on this object
static final Object FILE_DELTA_CHANGE = new Object();
static final long RESERVED_CLASS_ID_LIMIT = 500;

View File

@ -281,9 +281,10 @@ public final class RequestEngine {
static void setFlushInterval(long millis) {
// Don't accept shorter interval than 1 s.
long interval = millis < 1000 ? 1000 : millis;
long interval = millis < 1000 ? 1000 : millis;
boolean needNotify = interval < flushInterval;
flushInterval = interval;
if (interval < flushInterval) {
if (needNotify) {
synchronized (JVM.FILE_DELTA_CHANGE) {
JVM.FILE_DELTA_CHANGE.notifyAll();
}