From 964a09d3717cc83bee225ca98e27609a2a4f500c Mon Sep 17 00:00:00 2001 From: Egor Ushakov Date: Fri, 20 Dec 2019 16:41:15 +0300 Subject: [PATCH] [freeze reports] use monotonic nanoTime instead of currentTimeMillis GitOrigin-RevId: 198a4f7b22ab7d4e0b3e4267d885456ec7058afc --- .../core-impl/src/com/intellij/diagnostic/SamplingTask.java | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/platform/core-impl/src/com/intellij/diagnostic/SamplingTask.java b/platform/core-impl/src/com/intellij/diagnostic/SamplingTask.java index 8a3c2926221c..68ac342e4f8a 100644 --- a/platform/core-impl/src/com/intellij/diagnostic/SamplingTask.java +++ b/platform/core-impl/src/com/intellij/diagnostic/SamplingTask.java @@ -29,7 +29,7 @@ public class SamplingTask { public SamplingTask(int intervalMs, int maxDurationMs) { myDumpInterval = intervalMs; myMaxDumps = maxDurationMs / intervalMs; - myCurrentTime = myStartTime = System.currentTimeMillis(); + myCurrentTime = myStartTime = System.nanoTime(); myGcCurrentTime = myGcStartTime = currentGcTime(); myOsAverageLoad = OS_MX_BEAN.getSystemLoadAverage(); ScheduledExecutorService executor = PerformanceWatcher.getInstance().getExecutor(); @@ -37,7 +37,7 @@ public class SamplingTask { } private void dumpThreads() { - myCurrentTime = System.currentTimeMillis(); + myCurrentTime = System.nanoTime(); myGcCurrentTime = currentGcTime(); ThreadInfo[] infos = ThreadDumper.getThreadInfos(THREAD_MX_BEAN, false); if (!myFuture.isCancelled()) { @@ -69,7 +69,7 @@ public class SamplingTask { } public long getTotalTime() { - return myCurrentTime - myStartTime; + return TimeUnit.NANOSECONDS.toMillis(myCurrentTime - myStartTime); } public long getGcTime() {