From 7189dccd89050efaeac2ff22bf49a4a3d3162bad Mon Sep 17 00:00:00 2001 From: glax Date: Mon, 21 Jul 2025 12:35:18 +0200 Subject: [PATCH] Remove non-periodic workers after they finish --- API/Tranga.cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/API/Tranga.cs b/API/Tranga.cs index c299ecd..1fec3d7 100644 --- a/API/Tranga.cs +++ b/API/Tranga.cs @@ -146,17 +146,19 @@ public static class Tranga RunningWorkers.Remove(worker); foreach (BaseWorker newWorker in task.Result) AllWorkers.Add(newWorker); + if (worker is not IPeriodic) + AllWorkers.Remove(worker); task.Dispose(); } } private static IEnumerable DueWorkers(this IEnumerable workers) { - return workers.Where(w => + return workers.Where(worker => { - if (w.State is >= WorkerExecutionState.Running and < WorkerExecutionState.Completed) + if (worker.State is >= WorkerExecutionState.Running and < WorkerExecutionState.Completed) return false; - if (w is IPeriodic periodicWorker) + if (worker is IPeriodic periodicWorker) return periodicWorker.IsDue; return true; });