def startBackgroundLoops(self): if self.backgroundStackTraceLoopFilename is not None: StackTraceLoop.startLoop(self.backgroundStackTraceLoopFilename, timeout=2.0) if self.backgroundMemoryUsageLoopFilename is not None: MemoryUsageLoop.startLoop(self.backgroundMemoryUsageLoopFilename, interval=2.0)
def teardown(self): if self.loadingServices is None: logging.error("Tried to tear down an InMemoryCumulusSimulation twice") return self.stopServices() self.workersVdmsAndEventHandlers = None self.clientsAndVdms = None self.loadingServices = None self.listener = None for gate in self.workerTeardownGates + self.clientTeardownGates: if not gate.wait(30): import ufora.util.StackTraceLoop as StackTraceLoop StackTraceLoop.writeStackTraceSummary(sys.stderr) import ufora.native.Tests as TestsNative TestsNative.forceStackdump() raise UserWarning("Failed to tear down a simulation") if not self.useInMemoryCache: shutil.rmtree(self.diskCacheStorageDir)
def startBackgroundStackTraceLoop(self): if self.backgroundStackTraceLoopFilename is not None: StackTraceLoop.startLoop(self.backgroundStackTraceLoopFilename, timeout=2.0)