From 239240ecb6206474dff24d64d4c57adfc6266fe4 Mon Sep 17 00:00:00 2001 From: Ard Kuijpers Date: Thu, 4 Jun 2020 00:45:52 +0200 Subject: [PATCH] Geef een interrupt bij een exception in een thread --- app.py | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/app.py b/app.py index 046a071..95d0f87 100644 --- a/app.py +++ b/app.py @@ -2,6 +2,7 @@ import os import time import sys import threading +import _thread from dsmr_parser import telegram_specifications from dsmr_parser.clients import SerialReader, SERIAL_SETTINGS_V2_2, SERIAL_SETTINGS_V4, SERIAL_SETTINGS_V5 @@ -46,10 +47,14 @@ def main(): telegram = next(serial_reader.read_as_object()) device.update(telegram) logger.info(f"New telegram at {telegram.P1_MESSAGE_TIMESTAMP.value}") - + def startTimer(): threading.Timer(cfg.dsmr_update_interval, startTimer).start() - handle_next_telegram() + try: + handle_next_telegram() + except: + _thread.interrupt_main() + startTimer() # for telegram in serial_reader.read_as_object():