final long startTime = System.nanoTime(); while (true) { final long nanosToWaitForRateLimiter = limitRequestRate(request); try { isShuttingDown.await(nanosToWaitForRateLimiter, TimeUnit.NANOSECONDS);
final long startTime = System.nanoTime(); while (true) { final long nanosToWaitForRateLimiter = limitRequestRate(request); try { isShuttingDown.await(nanosToWaitForRateLimiter, TimeUnit.NANOSECONDS);