22 lines
521 B
Python
22 lines
521 B
Python
import time
|
|
from threading import Thread
|
|
from typing import Callable
|
|
|
|
|
|
class Timer(Thread):
|
|
def __init__(self, interval: float, func: Callable):
|
|
super().__init__()
|
|
|
|
self.interval: float = interval
|
|
self.func: Callable = func
|
|
self.running: bool = False
|
|
|
|
def run(self):
|
|
self.running: bool = True
|
|
time.sleep(self.interval)
|
|
while self.running:
|
|
self.func()
|
|
time.sleep(self.interval)
|
|
|
|
def stop(self):
|
|
self.running: bool = False
|