class_docstr: Read records from queue and dispatch to sender routines.
code: def __init__(
      self,
      settings: "SettingsStatic",
      record_q: "Queue[Record]",
      result_q: "Queue[Result]",
      stopped: "Event",
      interface: "InterfaceQueue",
      context_keeper: context.ContextKeeper,
      debounce_interval_ms: "float" = 5000,
  ) -> None:
      super().__init__(
          input_record_q=record_q,
          result_q=result_q,
          stopped=stopped,
          debounce_interval_ms=debounce_interval_ms,
      )
      self.name = "SenderThread"
      self._settings = settings
      self._record_q = record_q
      self._result_q = result_q
      self._interface = interface
      self._context_keeper = context_keeper
  
imports: import atexit
  import logging
  import os
  import queue
  import sys
  import threading
  import time
  import traceback
  from datetime import datetime
  from typing import TYPE_CHECKING, Any, List, Optional
  import psutil
  import wandb
  from ..interface.interface_queue import InterfaceQueue
  from ..lib import tracelog
  from .None import context, handler, internal_util, sender, writer
label_desc: Use image node_id 1 to create a new SenderThread object from inherited base classes: internal_util with example: obj = SenderThread(settings, record_q, result_q, stopped, interface, context_keeper, debounce_interval_ms)