code: async def wait(self):
          
          if self._limit is not None and self._limit > 0 and \
                  self._start is not None:
              now = _now()
              end = self._start + self._sum / self._limit
              await asyncio.sleep(max(0, end - now))
docs: :py:func:`asyncio.coroutine`
  
          Wait until can do IO