docs: def flushmany(self):
          """Send a potentially huge number of pending signals over the message bus.
  
          This method assumes that the number of pending signals might
          be huge, so that they might not fit into memory. However,
          `SignalBus.flushmany` is not very smart in handling concurrent
          senders. It is mostly useful when recovering from long periods
          of disconnectedness from the message bus.
  
          :return: The total number of signals that have been sent
  
          """
  
          models_to_flush = self.get_signal_models()
          try:
              return sum(self._flushmany_signals(model) for model in models_to_flush)
          finally:
              self.signal_session.remove()