handle various scenarios with external process failures

This commit is contained in:
Blake Blackshear
2020-03-09 21:12:19 -05:00
parent a60b9211d2
commit 3a9781c4f8
6 changed files with 218 additions and 133 deletions

View File

@@ -1,4 +1,6 @@
import datetime
import signal
import traceback
import collections
import numpy as np
import cv2
@@ -127,3 +129,9 @@ class EventsPerSecond:
now = datetime.datetime.now().timestamp()
seconds = min(now-self._start, last_n_seconds)
return len([t for t in self._timestamps if t > (now-last_n_seconds)]) / seconds
def print_stack(sig, frame):
traceback.print_stack(frame)
def listen():
signal.signal(signal.SIGUSR1, print_stack)