docs: def start(self):
          """Starts a new sender thread if none is not already there
          """
          with self._lock_send_remaining_time:
              if self._send_remaining_time <= 0.0:
                  local_send_interval = self._send_interval
                  if self._send_interval < 0.1:
                      local_send_interval = 0.1
                  self._send_remaining_time = self._send_time
                  if self._send_remaining_time < local_send_interval:
                      self._send_remaining_time = local_send_interval
                  thread = Thread(target=self._run)
                  thread.daemon = True
                  thread.start()