Explorar el Código

fix: only register atexit when EventStreamRuntime is initialized (#5712)

Xingyao Wang hace 1 año
padre
commit
cfbe77b367
Se han modificado 1 ficheros con 6 adiciones y 1 borrados
  1. 6 1
      openhands/runtime/impl/eventstream/eventstream_runtime.py

+ 6 - 1
openhands/runtime/impl/eventstream/eventstream_runtime.py

@@ -59,7 +59,7 @@ def remove_all_runtime_containers():
     remove_all_containers(CONTAINER_NAME_PREFIX)
 
 
-atexit.register(remove_all_runtime_containers)
+_atexit_registered = False
 
 
 class EventStreamRuntime(Runtime):
@@ -109,6 +109,11 @@ class EventStreamRuntime(Runtime):
         attach_to_existing: bool = False,
         headless_mode: bool = True,
     ):
+        global _atexit_registered
+        if not _atexit_registered:
+            _atexit_registered = True
+            atexit.register(remove_all_runtime_containers)
+
         self.config = config
         self._host_port = 30000  # initial dummy value
         self._container_port = 30001  # initial dummy value