14 lines
333 B
Python
14 lines
333 B
Python
from asyncio import Event
|
|
from signal import signal, SIGINT, SIGTERM
|
|
|
|
class StopEvent:
|
|
__event: Event
|
|
|
|
def __init__(self, event: Event) -> None:
|
|
self.__event = event
|
|
|
|
def setup_stop_signals(self) -> None:
|
|
for signum in (SIGINT, SIGTERM):
|
|
signal(signum, lambda sig, frame: self.__event.set())
|
|
|