From 006e457d23474631b57c52823a589b9d8c0a7265 Mon Sep 17 00:00:00 2001 From: herrrta <73949927+herrrta@users.noreply.github.com> Date: Fri, 6 Dec 2024 19:51:50 -0500 Subject: [PATCH] # Fix queue being downloaded all at once --- utils/atoms/queue.ts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/utils/atoms/queue.ts b/utils/atoms/queue.ts index a6f967bb..70f85de9 100644 --- a/utils/atoms/queue.ts +++ b/utils/atoms/queue.ts @@ -27,14 +27,17 @@ export const queueActions = { setProcessing: (processing: boolean) => void ) => { const [job, ...rest] = queue; - setQueue(rest); console.info("Processing job", job); setProcessing(true); - // Excute the function assiociated with the job. - await job.execute(); + // Allow job to execute so that it gets added as a processes first BEFORE updating new queue + try { + await job.execute(); + } finally { + setQueue(rest); + } console.info("Job done", job); @@ -56,7 +59,7 @@ export const useJobProcessor = () => { const [settings] = useSettings(); useEffect(() => { - if (queue.length > 0 && settings && processes.length < settings?.remuxConcurrentLimit) { + if (!running && queue.length > 0 && settings && processes.length < settings?.remuxConcurrentLimit) { console.info("Processing queue", queue); queueActions.processJob(queue, setQueue, setRunning); }