From d5eb5f473feb3b18f761ff2dc8667124e5380f32 Mon Sep 17 00:00:00 2001 From: mikawudi Date: Thu, 27 Aug 2020 06:47:35 -0500 Subject: [PATCH] Pre-calculate intervalInSecond in LeapArray to reduce redundant calculation (#1700) --- .../alibaba/csp/sentinel/slots/statistic/base/LeapArray.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/sentinel-core/src/main/java/com/alibaba/csp/sentinel/slots/statistic/base/LeapArray.java b/sentinel-core/src/main/java/com/alibaba/csp/sentinel/slots/statistic/base/LeapArray.java index 2bba544b..32b854e8 100755 --- a/sentinel-core/src/main/java/com/alibaba/csp/sentinel/slots/statistic/base/LeapArray.java +++ b/sentinel-core/src/main/java/com/alibaba/csp/sentinel/slots/statistic/base/LeapArray.java @@ -43,6 +43,7 @@ public abstract class LeapArray { protected int windowLengthInMs; protected int sampleCount; protected int intervalInMs; + private double intervalInSecond; protected final AtomicReferenceArray> array; @@ -64,6 +65,7 @@ public abstract class LeapArray { this.windowLengthInMs = intervalInMs / sampleCount; this.intervalInMs = intervalInMs; + this.intervalInSecond = intervalInMs / 1000.0; this.sampleCount = sampleCount; this.array = new AtomicReferenceArray<>(sampleCount); @@ -393,7 +395,7 @@ public abstract class LeapArray { * @return interval in second */ public double getIntervalInSecond() { - return intervalInMs / 1000.0; + return intervalInSecond; } public void debug(long time) {