diff --git a/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/FixedWindowRateLimiter.cs b/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/FixedWindowRateLimiter.cs
index ce241a6a342a07..09fd69e770f65d 100644
--- a/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/FixedWindowRateLimiter.cs
+++ b/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/FixedWindowRateLimiter.cs
@@ -24,7 +24,7 @@ public sealed class FixedWindowRateLimiter : ReplenishingRateLimiter
///
/// Function to calculate elapsed time from a given tick value.
- /// Defaults to .
+ /// Defaults to the which returns when the timestamp is , and returns Stopwatch.GetElapsedTime(long) when not null.
/// In tests, this field can be reassigned via reflection to inject custom time behavior without modifying the public API.
///
private readonly Func _getElapsedTime = RateLimiterHelper.GetElapsedTime;
@@ -301,7 +301,7 @@ private void ReplenishInternal(long nowTicks)
return;
}
- if (RateLimiterHelper.GetElapsedTime(_lastReplenishmentTick, nowTicks) < _options.Window && !_options.AutoReplenishment)
+ if (Stopwatch.GetElapsedTime(_lastReplenishmentTick, nowTicks) < _options.Window && !_options.AutoReplenishment)
{
return;
}
diff --git a/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/RateLimiterHelper.cs b/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/RateLimiterHelper.cs
index e538fc720072dd..97184ba515082a 100644
--- a/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/RateLimiterHelper.cs
+++ b/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/RateLimiterHelper.cs
@@ -16,10 +16,5 @@ internal static class RateLimiterHelper
return Stopwatch.GetElapsedTime(startTimestamp.Value);
}
-
- public static TimeSpan GetElapsedTime(long startTimestamp, long endTimestamp)
- {
- return Stopwatch.GetElapsedTime(startTimestamp, endTimestamp);
- }
}
}
diff --git a/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/SlidingWindowRateLimiter.cs b/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/SlidingWindowRateLimiter.cs
index 29b16440cd8e03..ba2855cc888832 100644
--- a/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/SlidingWindowRateLimiter.cs
+++ b/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/SlidingWindowRateLimiter.cs
@@ -293,7 +293,7 @@ private void ReplenishInternal(long nowTicks)
return;
}
- if (RateLimiterHelper.GetElapsedTime(_lastReplenishmentTick, nowTicks) < ReplenishmentPeriod && !_options.AutoReplenishment)
+ if (Stopwatch.GetElapsedTime(_lastReplenishmentTick, nowTicks) < ReplenishmentPeriod && !_options.AutoReplenishment)
{
return;
}
diff --git a/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/TokenBucketRateLimiter.cs b/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/TokenBucketRateLimiter.cs
index 5c73c3671eaeff..dfb8ba7316ef6f 100644
--- a/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/TokenBucketRateLimiter.cs
+++ b/src/libraries/System.Threading.RateLimiting/src/System/Threading/RateLimiting/TokenBucketRateLimiter.cs
@@ -308,7 +308,7 @@ private void ReplenishInternal(long nowTicks)
}
else
{
- add = _fillRate * RateLimiterHelper.GetElapsedTime(_lastReplenishmentTick, nowTicks).Ticks;
+ add = _fillRate * Stopwatch.GetElapsedTime(_lastReplenishmentTick, nowTicks).Ticks;
}
_tokenCount = Math.Min(_options.TokenLimit, _tokenCount + add);