Merge pull request #233 from tiqi-group/fix/task_event_loop

fix: task event loop
This commit is contained in:
Mose Müller
2025-05-22 16:01:29 +02:00
committed by GitHub
2 changed files with 5 additions and 7 deletions

View File

@@ -14,7 +14,6 @@ from pydase.data_service.data_service_observer import DataServiceObserver
from pydase.data_service.state_manager import StateManager
from pydase.server.web_server import WebServer
from pydase.task.autostart import autostart_service_tasks
from pydase.utils.helpers import current_event_loop_exists
HANDLED_SIGNALS = (
signal.SIGINT, # Unix signal 2. Sent by Ctrl+C.
@@ -162,6 +161,10 @@ class Server:
self._additional_servers = additional_servers
self.should_exit = False
self.servers: dict[str, asyncio.Future[Any]] = {}
self._loop = asyncio.new_event_loop()
asyncio.set_event_loop(self._loop)
self._state_manager = StateManager(
service=self._service,
filename=filename,
@@ -170,11 +173,6 @@ class Server:
self._observer = DataServiceObserver(self._state_manager)
self._state_manager.load_state()
autostart_service_tasks(self._service)
if not current_event_loop_exists():
self._loop = asyncio.new_event_loop()
asyncio.set_event_loop(self._loop)
else:
self._loop = asyncio.get_event_loop()
def run(self) -> None:
"""

View File

@@ -231,6 +231,6 @@ def current_event_loop_exists() -> bool:
import asyncio
try:
return not asyncio.get_running_loop().is_closed()
return not asyncio.get_event_loop().is_closed()
except RuntimeError:
return False