Java实现循环goto跳转

2024-12-13  本文已影响0人  sunpy

Java中跳转的作用

在多层循环时,想要跳转到指定为止,这样可以让编写者的逻辑更加清晰。

跳转用法

continue retry

public static void main(String[] args) {
    retry:
    for (int i = 0 ; i < 5 ; i++) {
 
        for (int j = 0 ; j < 3 ; j++) {
            if (j == 1) {
                continue retry;
            }
 
            System.out.println("i = " + i + " , j = " + j);
        }
    }
}

break retry

public static void main(String[] args) {
    retry:
    for (int i = 0 ; i < 5 ; i++) {
 
        for (int j = 0 ; j < 3 ; j++) {
            if (j == 1) {
                break retry;
            }
 
            System.out.println("i = " + i + " , j = " + j);
        }
    }
}

总结

源码应用

线程池添加Worker时执行的逻辑

线程池中工作线程数和线程池状态都是通过一个变量的高低位来表示的,而这个变量会用来判断新增加工作Worker是否成功,所以要使用cas锁的方式更新共享变量。线程池采用空循环等待执行,等待cas更新完毕,退出循环,而退出循环的方式就是采用retry跳转来实现。

上一篇 下一篇

猜你喜欢

热点阅读