From 096346350e19c5de9a4d74bba64796997e9f40da Mon Sep 17 00:00:00 2001 From: Mo <76752051+mo8it@users.noreply.github.com> Date: Mon, 5 Feb 2024 13:54:05 +0100 Subject: [PATCH] perf: Use drain instead of remove in chart examples (#922) --- examples/chart.rs | 10 ++++------ examples/demo/app.rs | 4 +--- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/examples/chart.rs b/examples/chart.rs index 653c97f7..4da3fb78 100644 --- a/examples/chart.rs +++ b/examples/chart.rs @@ -81,14 +81,12 @@ impl App { } fn on_tick(&mut self) { - for _ in 0..5 { - self.data1.remove(0); - } + self.data1.drain(0..5); self.data1.extend(self.signal1.by_ref().take(5)); - for _ in 0..10 { - self.data2.remove(0); - } + + self.data2.drain(0..10); self.data2.extend(self.signal2.by_ref().take(10)); + self.window[0] += 1.0; self.window[1] += 1.0; } diff --git a/examples/demo/app.rs b/examples/demo/app.rs index 3c121c10..56e5ebe2 100644 --- a/examples/demo/app.rs +++ b/examples/demo/app.rs @@ -191,9 +191,7 @@ where S: Iterator, { fn on_tick(&mut self) { - for _ in 0..self.tick_rate { - self.points.remove(0); - } + self.points.drain(0..self.tick_rate); self.points .extend(self.source.by_ref().take(self.tick_rate)); }