Files
@ 4b4cae6939e8
Branch filter:
Location: OneEye/src/util.py - annotation
4b4cae6939e8
667 B
text/x-python
gui split into more files
5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 5f4489f36388 | import multiprocessing
import logging as log
class MsgQueue:
def __init__(self,handler=None):
self._queue=multiprocessing.Queue()
self._event=multiprocessing.Event()
self._handleEvent=handler
def send(self,actionName,args=tuple(),kwargs=None):
if kwargs is None: kwargs=dict()
self._queue.put((actionName,args,kwargs))
self._event.set()
def listen(self,handleEvent=None):
if handleEvent is not None: self._handleEvent=handleEvent
while True:
self._event.wait()
msg=self._queue.get()
if self._queue.empty():
self._event.clear()
log.info(msg)
self._handleEvent(msg)
def setHandler(self,handler):
self._handleEvent=handler
|