给出以下代码
var cachedInt = new ArrayBlockingQueue<Integer>(xxxxx);
while(true){
while(cachedInt.offer(randomProvider.nextInt()));
latch.await();
}
jvm最终是否会消除while循环,因为它没有正文或是否识别出条件的副作用并保持循环到位?
没有jvm不会“优化”你的方法调用。您的情况将反复运行,直到它返回false并且副作用将正常发生。