From e056f8a2b30f20d3faa3f59db5de8645a763440d Mon Sep 17 00:00:00 2001 From: JurrianSollie <63206268+JurrianSollie@users.noreply.github.com> Date: Wed, 16 Oct 2024 14:48:10 +0200 Subject: [PATCH] Update CSVComparer.cs I was having issues with loading files. Sometimes it didn't fully load a file, but it already went into the compare Task. Forcing the code to wait on both loader Tasks, fixed this problem. --- CSVComparison/CSVComparer.cs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/CSVComparison/CSVComparer.cs b/CSVComparison/CSVComparer.cs index c2449cb..8d0f837 100644 --- a/CSVComparison/CSVComparer.cs +++ b/CSVComparison/CSVComparer.cs @@ -43,11 +43,11 @@ public ComparisonResult CompareFiles(string leftHandSideFile, string rightHandSi { ResetState(); - var leftHandSideLoaderTask = Task.Run(() => LoadFile(leftHandSideFile, _leftHandSideQueue)); - var rightHandSideLoaderTask = Task.Run(() => LoadFile(rightHandSideFile, _rightHandSideQueue)); - var compareTask = Task.Run(() => CompareCsvs()); + Task leftHandSideLoaderTask = Task.Run(() => LoadFile(leftHandSideFile, _leftHandSideQueue)); + Task rightHandSideLoaderTask = Task.Run(() => LoadFile(rightHandSideFile, _rightHandSideQueue)); + Task compareTask = Task.WhenAll(leftHandSideLoaderTask, rightHandSideLoaderTask).ContinueWith(_ => CompareCsvs()); - Task.WaitAll(leftHandSideLoaderTask, rightHandSideLoaderTask, compareTask); + compareTask.Wait(); if (!_earlyTerminate) {