self._q_to_main = q_to_main
self._bonus_iterator = bonus_iterator
self._q_input: SimpleQueue[Event] = SimpleQueue()
- Thread(target=self._loop, daemon=False).start()
+ self._thread = Thread(target=self._loop, daemon=False)
+ self._thread.start()
def __enter__(self) -> Self:
return self
def __exit__(self, *_) -> Literal[False]:
self._q_input.put(Event('QUIT'))
+ self._thread.join()
return False # re-raise any exception that above ignored
def put(self, event: Event) -> None: