code: async def wait(self, name):
          
          waiters = []
          for throttle in self.throttles.values():
              curr_throttle = getattr(throttle, name)
              if curr_throttle.limit:
                  waiters.append(curr_throttle.wait())
          if waiters:
              await asyncio.wait(waiters)
docs: :py:func:`asyncio.coroutine`
  
          Wait for all throttles
  
          :param name: name of throttle to acquire ("read" or "write")
          :type name: :py:class:`str`