29 lines
761 B
Python
29 lines
761 B
Python
from time import sleep
|
|
from threading import Thread
|
|
|
|
class FlaskPageThread(Thread):
|
|
def __init__(self, delay, func, *args, **kwargs):
|
|
self.delay = delay
|
|
self.func = func
|
|
self.args = args
|
|
self.page = ("init", 500)
|
|
name = kwargs.get("name", "FlaskPageThread")
|
|
super().__init__(target=self.run, daemon=True, name=name)
|
|
|
|
def genpage(self):
|
|
try:
|
|
data = self.func(*self.args)
|
|
self.page = (data, 200)
|
|
except Exception as e:
|
|
print("Exception: %s" % e)
|
|
self.page = ("Internal error", 500)
|
|
|
|
def run(self):
|
|
self.genpage()
|
|
while True:
|
|
sleep(self.delay)
|
|
self.genpage()
|
|
|
|
if __name__ == "__main__":
|
|
pass
|