code: def pipeline(self):
          
          return Pipeline(self._pool_or_conn, self.__class__,
                          loop=self._pool_or_conn._loop)
docs: Returns :class:`Pipeline` object to execute bulk of commands.
  
          It is provided for convenience.
          Commands can be pipelined without it.
  
          Example:
  
          >>> pipe = redis.pipeline()
          >>> fut1 = pipe.incr('foo') # NO `await` as it will block forever!
          >>> fut2 = pipe.incr('bar')
          >>> result = await pipe.execute()
          >>> result
          [1, 1]
          >>> await asyncio.gather(fut1, fut2)
          [1, 1]
          >>> #
          >>> # The same can be done without pipeline:
          >>> #
          >>> fut1 = redis.incr('foo')    # the 'INCRY foo' command already sent
          >>> fut2 = redis.incr('bar')
          >>> await asyncio.gather(fut1, fut2)
          [2, 2]