JAVA-retry 重试
生活随笔
收集整理的這篇文章主要介紹了
JAVA-retry 重试
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在看?ThreadPoolExecutor 源碼時看到這么一段代碼
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 分開測試
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;} }會無限循環
?
總結
retry 并不是一個關鍵字,只是作為一個標記使用。并與最近的一個循環綁定,在使用 break 或 continue 時后面可加上該標記,就可指定對哪一層循環進行操作了
轉載于:https://www.cnblogs.com/jhxxb/p/10830002.html
總結
以上是生活随笔為你收集整理的JAVA-retry 重试的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 本人已满16岁,可以报旅行团出国游吗(家
- 下一篇: 日本留学,所有途径的费用各是多少?