diff --git a/src/common/tools/mutex_queues/MutexQueues.py b/src/common/tools/mutex_queues/MutexQueues.py
index b9fc567d561287ed5d92f51a3cab0f92d58d88ed..96e22a86f012cb8326c380a0ebbf0c1b40cae21c 100644
--- a/src/common/tools/mutex_queues/MutexQueues.py
+++ b/src/common/tools/mutex_queues/MutexQueues.py
@@ -35,7 +35,7 @@
 #           self.mutex_queues.signal_done(device_uuid)
 
 import threading
-from queue import Queue
+from queue import Queue, Empty
 from typing import Dict
 
 class MutexQueues:
@@ -67,8 +67,11 @@ class MutexQueues:
         with self.lock:
             queue : Queue = self.mutex_queues.setdefault(queue_name, Queue())
             
-            # remove muself from the queue
-            queue.get_nowait()
+            # remove myself from the queue
+            try:
+                queue.get(block=True, timeout=0.1)
+            except Empty:
+                pass
 
             # if there are no other tasks queued, return
             if queue.qsize() == 0: return