feat: introduce device plugin runtime boundary

This commit is contained in:
DCCONSTRUCTIONS
2026-07-16 13:49:10 +03:00
parent 9225227421
commit 27bf7527df
45 changed files with 3748 additions and 1062 deletions
+3 -3
View File
@@ -146,6 +146,8 @@ class VisualizationRuntime:
return
assert thread is not None
thread.join(timeout=wait_seconds)
if thread.is_alive():
raise RuntimeError("поток не завершился за отведённое время; повторите остановку")
def close(self, *, wait_seconds: float = 5.0) -> None:
"""Stop the active source and release the process-wide visual bridge."""
@@ -324,9 +326,7 @@ class VisualizationRuntime:
self._rerun_grpc_url = bridge.grpc_url
if not self._closed and self._phase != "stopping":
self._phase = running_phase
self._message = (
"Локальный Rerun-мост готов; источник данных запущен."
)
self._message = "Локальный Rerun-мост готов; источник данных запущен."
publisher_ready.set()
self._notify()
if publisher_aborted.is_set():