code: async def run(self):
          
          # Implement pull max batch from queue instead of one message at a time
          while self.eh_partition_pump.pump_status != "Errored" and not self.eh_partition_pump.is_closing():
              if self.eh_partition_pump.partition_receive_handler:
                  try:
                      msgs = await self.eh_partition_pump.partition_receive_handler.receive(
                          max_batch_size=self.max_batch_size,
                          timeout=self.recieve_timeout)
                  except Exception as e:  # pylint: disable=broad-except
                      _logger.info("Error raised while attempting to receive messages: %r", e)
                      await self.process_error_async(e)
                  else:
                      if not msgs:
                          _logger.info("No events received, queue size %r, release %r",
                                       self.eh_partition_pump.partition_receive_handler.queue_size,
                                       self.eh_partition_pump.host.eph_options.release_pump_on_timeout)
                          if self.eh_partition_pump.host.eph_options.release_pump_on_timeout:
                              await self.process_error_async(TimeoutError("No events received"))
                      else:
                          await self.process_events_async(msgs)
docs: Runs the async partion reciever event loop to retrive messages from the event queue.