Merge pull request #259 from herrrta/fix/remux-download

Fix queue being downloaded all at once
This commit is contained in:
Fredrik Burmester
2024-12-07 09:28:49 +01:00
committed by GitHub

View File

@@ -27,14 +27,17 @@ export const queueActions = {
setProcessing: (processing: boolean) => void setProcessing: (processing: boolean) => void
) => { ) => {
const [job, ...rest] = queue; const [job, ...rest] = queue;
setQueue(rest);
console.info("Processing job", job); console.info("Processing job", job);
setProcessing(true); setProcessing(true);
// Excute the function assiociated with the job. // Allow job to execute so that it gets added as a processes first BEFORE updating new queue
await job.execute(); try {
await job.execute();
} finally {
setQueue(rest);
}
console.info("Job done", job); console.info("Job done", job);
@@ -56,7 +59,7 @@ export const useJobProcessor = () => {
const [settings] = useSettings(); const [settings] = useSettings();
useEffect(() => { 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); console.info("Processing queue", queue);
queueActions.processJob(queue, setQueue, setRunning); queueActions.processJob(queue, setQueue, setRunning);
} }