JAVA-retry 重试
生活随笔
收集整理的這篇文章主要介紹了
JAVA-retry 重试
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
在看?ThreadPoolExecutor 源碼時(shí)看到這么一段代碼
retry: for (;;) {int c = ctl.get();int rs = runStateOf(c);// Check if queue empty only if necessary.if (rs >= SHUTDOWN &&! (rs == SHUTDOWN &&firstTask == null &&! workQueue.isEmpty()))return false;for (;;) {int wc = workerCountOf(c);if (wc >= CAPACITY ||wc >= (core ? corePoolSize : maximumPoolSize))return false;if (compareAndIncrementWorkerCount(c))break retry;c = ctl.get(); // Re-read ctlif (runStateOf(c) != rs)continue retry;// else CAS failed due to workerCount change; retry inner loop } }?
break 和 continue 分開(kāi)測(cè)試
retry: for (;;) {System.out.println("A");for (;;) {System.out.println("B");break retry;} } System.out.println("End"); retry: for (; ; ) {System.out.println("A");for (; ; ) {System.out.println("B");continue retry;} }會(huì)無(wú)限循環(huán)
?
總結(jié)
retry 并不是一個(gè)關(guān)鍵字,只是作為一個(gè)標(biāo)記使用。并與最近的一個(gè)循環(huán)綁定,在使用 break 或 continue 時(shí)后面可加上該標(biāo)記,就可指定對(duì)哪一層循環(huán)進(jìn)行操作了
轉(zhuǎn)載于:https://www.cnblogs.com/jhxxb/p/10830002.html
總結(jié)
以上是生活随笔為你收集整理的JAVA-retry 重试的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 本人已满16岁,可以报旅行团出国游吗(家
- 下一篇: 创建一个dynamics CRM wor