From 99bf99bddaa10816fff1fb7ee8a3d9ebfcae303d Mon Sep 17 00:00:00 2001 From: Gorniaky Date: Sat, 20 Jun 2026 13:23:34 -0300 Subject: [PATCH 1/2] refactor: optimize first element retrieval in SpeedMonitor --- lib/utils/speed_monitor.dart | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/utils/speed_monitor.dart b/lib/utils/speed_monitor.dart index e82c2cc..5ef0458 100644 --- a/lib/utils/speed_monitor.dart +++ b/lib/utils/speed_monitor.dart @@ -37,7 +37,9 @@ class SpeedMonitor implements Disposable { ..removeWhere((s) => last.time - s.time > _windowDuration.inMicroseconds) ..add(last); - final first = _queue.first; + final queueIterator = _queue.iterator..moveNext(); + + final first = queueIterator.current; if (first == last) return _zero; From 688adcbe0edb1d29413d5a43ee6ccfdb298958ce Mon Sep 17 00:00:00 2001 From: Gorniaky Date: Sat, 20 Jun 2026 13:24:25 -0300 Subject: [PATCH 2/2] refactor: reorder fields in _SpeedSample for better readability --- lib/utils/speed_monitor.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/utils/speed_monitor.dart b/lib/utils/speed_monitor.dart index 5ef0458..be57e49 100644 --- a/lib/utils/speed_monitor.dart +++ b/lib/utils/speed_monitor.dart @@ -5,8 +5,8 @@ import "package:discloud/cli/disposable.dart"; final class _SpeedSample { _SpeedSample(this.units) : time = DateTime.now().microsecondsSinceEpoch; - final int units; final int time; + final int units; } /// A utility class for monitoring processing speed over a sliding time window.