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