Skip to content
Snippets Groups Projects
Commit 36b2d792 authored by Lluis Gifre Renom's avatar Lluis Gifre Renom
Browse files

Common - MutexQueues:

- Added safety control
parent bb094bf1
No related branches found
No related tags found
2 merge requests!142Release TeraFlowSDN 2.1,!62Add relese/2.0.1 fixes
...@@ -35,7 +35,7 @@ ...@@ -35,7 +35,7 @@
# self.mutex_queues.signal_done(device_uuid) # self.mutex_queues.signal_done(device_uuid)
import threading import threading
from queue import Queue from queue import Queue, Empty
from typing import Dict from typing import Dict
class MutexQueues: class MutexQueues:
...@@ -67,8 +67,11 @@ class MutexQueues: ...@@ -67,8 +67,11 @@ class MutexQueues:
with self.lock: with self.lock:
queue : Queue = self.mutex_queues.setdefault(queue_name, Queue()) queue : Queue = self.mutex_queues.setdefault(queue_name, Queue())
# remove muself from the queue # remove myself from the queue
queue.get_nowait() try:
queue.get(block=True, timeout=0.1)
except Empty:
pass
# if there are no other tasks queued, return # if there are no other tasks queued, return
if queue.qsize() == 0: return if queue.qsize() == 0: return
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment