code: def _run_event_loop() -> None:
      # A separate thread to run the event loop.
      # The event loop itself is blocking, and send/receive are also blocking,
      # so they must run in different threads.
      asyncio.set_event_loop(_event_loop)
      _event_loop.run_forever()
      _logger.debug("Event loop stopped.")
  
file_path: nni/nni/runtime/command_channel/websocket/connection.py
imports: from __future__ import annotations
  import asyncio
  import logging
  from threading import Lock, Thread
  from typing import Any, Type
  import websockets
  import nni
  from ..base import Command
label_desc: Use image node_id 2 for calling a global function with example usage: _run_event_loop() without return types