code: async def _push(self, *args, **kwargs):
          
          self._data.append((args, kwargs))
          if self._future is not None:
  
              future, self._future = self._future, None
              future.set_result(True)
docs: Push new data into the buffer. Resume looping if paused.