From 082f699aa5d62e027d4f10a3fe095012edc1fa62 Mon Sep 17 00:00:00 2001 From: Dan Balasescu Date: Mon, 26 Feb 2024 19:40:37 +0900 Subject: [PATCH] Improve benchmark --- .../BenchmarkAggregateBindable.cs | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/osu.Framework.Benchmarks/BenchmarkAggregateBindable.cs b/osu.Framework.Benchmarks/BenchmarkAggregateBindable.cs index 3e01b96c6..bb6039a65 100644 --- a/osu.Framework.Benchmarks/BenchmarkAggregateBindable.cs +++ b/osu.Framework.Benchmarks/BenchmarkAggregateBindable.cs @@ -11,15 +11,27 @@ namespace osu.Framework.Benchmarks { private readonly BindableInt source1 = new BindableInt(); private readonly BindableInt source2 = new BindableInt(); + private readonly AggregateBindable boundAggregate = new AggregateBindable(((i, j) => i + j)); + private readonly AggregateBindable aggregate = new AggregateBindable(((i, j) => i + j)); + + [GlobalSetup] + public void GlobalSetup() + { + boundAggregate.AddSource(source1); + boundAggregate.AddSource(source2); + } [Benchmark] - public void AggregateRecalculation() + public void AddRemoveSource() { - var aggregate = new AggregateBindable(((i, j) => i + j)); - aggregate.AddSource(source1); aggregate.AddSource(source2); + aggregate.RemoveAllSources(); + } + [Benchmark] + public void SetValue() + { for (int i = 0; i < 100; i++) { source1.Value = i;