С учетом следующего кода
var cachedInt = new ArrayBlockingQueue<Integer>(xxxxx);
while(true){
while(cachedInt.offer(randomProvider.nextInt()));
latch.await();
}
Удастся ли в конечном итоге jvm устранить цикл while, потому что у него нет тела, или он распознает побочный эффект условия и сохранит цикл на месте?