code: def __init__(self, timeout=None, check_interval=None):
      self._role_to_nodes = defaultdict(set)
      self._role_to_notifier = defaultdict(WatchNotifier)
  
      self._node_infos = dict()
  
      self._node_timeout = timeout or DEFAULT_NODE_DEAD_TIMEOUT
      self._check_interval = (
          check_interval or DEFAULT_NODE_CHECK_INTERVAL
      )
      self._check_task = None
  
file_path: mars/mars/services/cluster/supervisor/node_info.py
imports: import time
  from collections import defaultdict
  from typing import Dict, List, Optional, Set
  from ....None import oscar
  from ....resource import Resource
  from ....typing import BandType
  from ...core import NodeRole
  from ..core import NodeInfo, WatchNotifier, NodeStatus
label_desc: Use image node_id 1 to create a new NodeInfoCollectorActor object from inherited base classes: mo with example: obj = NodeInfoCollectorActor(timeout, check_interval)