code: def __init__(
      self,
      session_id: str,
      supervisor_address: str,
      worker_address: str,
      local_address: str,
      loop: asyncio.AbstractEventLoop,
      band: BandType = None,
  ):
      super().__init__(
          session_id=session_id,
          supervisor_address=supervisor_address,
          worker_address=worker_address,
          local_address=local_address,
          band=band,
      )
      self._loop = loop
      # new isolation with current loop,
      # so that session created in tile and execute
      # can get the right isolation
      new_isolation(loop=self._loop, threaded=False)
  
      self._running_session_id = None
      self._running_op_key = None
  
      # APIs
      self._cluster_api = None
      self._session_api = None
      self._meta_api = None
      self._subtask_api = None
  
imports: import asyncio
  import logging
  from collections import defaultdict
  from functools import lru_cache
  from typing import List, Dict
  from ..None import oscar
  from ..lib.aio import new_isolation
  from ..core.context import Context
  from ..storage.base import StorageLevel
  from ..typing import BandType, SessionType
  from ..utils import implements, is_ray_address
  from .cluster import ClusterAPI, NodeRole
  from .session import SessionAPI
  from .storage import StorageAPI
  from .subtask import SubtaskAPI
  from .meta import MetaAPI, WorkerMetaAPI
label_desc: Use image node_id 1 to create a new ThreadedServiceContext object from inherited base classes: Context with example: obj = ThreadedServiceContext(session_id, supervisor_address, worker_address, local_address, loop, band)