import sys import time import threading sys.setcheckinterval(17) class C: def __del__(self): try: t = threading.Thread(target=lambda: 1+1) except: pass else: t.start() cc = [C() for _ in range(10)] def worker(): while True: cc = [C() for _ in range(3)] try: raise 1/0 except: time.sleep(0.001) for _ in range(10): t = threading.Thread(target=worker) t.daemon = True t.start() time.sleep(.1)