最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java多線程之CyclicBarrier的使用方法

 更新時(shí)間:2017年10月24日 15:55:09   作者:chuyouyinghe  
這篇文章主要介紹了java多線程之CyclicBarrier的使用方法的相關(guān)資料,希望通過本文能幫助到大家,讓大家理解掌握這部分內(nèi)容,需要的朋友可以參考下

java多線程之CyclicBarrier的使用方法

public class CyclicBarrierTest { 
 
  public static void main(String[] args) { 
    ExecutorService service = Executors.newCachedThreadPool(); 
    final CyclicBarrier cb = new CyclicBarrier(3); 
    for(int i=0;i<3;i++){ 
      Runnable runnable = new Runnable(){ 
          public void run(){ 
          try { 
            Thread.sleep((long)(Math.random()*10000));  
            System.out.println("線程" + Thread.currentThread().getName() +  
                "即將到達(dá)集合地點(diǎn)1,當(dāng)前已有" + (cb.getNumberWaiting()+1) + "個(gè)已經(jīng)到達(dá)," + (cb.getNumberWaiting()==2?"都到齊了,繼續(xù)走啊":"正在等候"));             
            cb.await(); 
             
            Thread.sleep((long)(Math.random()*10000));  
            System.out.println("線程" + Thread.currentThread().getName() +  
                "即將到達(dá)集合地點(diǎn)2,當(dāng)前已有" + (cb.getNumberWaiting()+1) + "個(gè)已經(jīng)到達(dá)," + (cb.getNumberWaiting()==2?"都到齊了,繼續(xù)走啊":"正在等候")); 
            cb.await();  
            Thread.sleep((long)(Math.random()*10000));  
            System.out.println("線程" + Thread.currentThread().getName() +  
                "即將到達(dá)集合地點(diǎn)3,當(dāng)前已有" + (cb.getNumberWaiting() + 1) + "個(gè)已經(jīng)到達(dá)," + (cb.getNumberWaiting()==2?"都到齊了,繼續(xù)走啊":"正在等候"));            
            cb.await();            
          } catch (Exception e) { 
            e.printStackTrace(); 
          }         
        } 
      }; 
      service.execute(runnable); 
    } 
    service.shutdown(); 
  } 
} 

運(yùn)行結(jié)果如下:

線程pool-1-thread-3即將到達(dá)集合地點(diǎn)1,當(dāng)前已有1個(gè)已經(jīng)到達(dá),正在等候
線程pool-1-thread-1即將到達(dá)集合地點(diǎn)1,當(dāng)前已有2個(gè)已經(jīng)到達(dá),正在等候
線程pool-1-thread-2即將到達(dá)集合地點(diǎn)1,當(dāng)前已有3個(gè)已經(jīng)到達(dá),都到齊了,繼續(xù)走啊
線程pool-1-thread-3即將到達(dá)集合地點(diǎn)2,當(dāng)前已有1個(gè)已經(jīng)到達(dá),正在等候
線程pool-1-thread-1即將到達(dá)集合地點(diǎn)2,當(dāng)前已有2個(gè)已經(jīng)到達(dá),正在等候
線程pool-1-thread-2即將到達(dá)集合地點(diǎn)2,當(dāng)前已有3個(gè)已經(jīng)到達(dá),都到齊了,繼續(xù)走啊
線程pool-1-thread-1即將到達(dá)集合地點(diǎn)3,當(dāng)前已有1個(gè)已經(jīng)到達(dá),正在等候
線程pool-1-thread-3即將到達(dá)集合地點(diǎn)3,當(dāng)前已有2個(gè)已經(jīng)到達(dá),正在等候
線程pool-1-thread-2即將到達(dá)集合地點(diǎn)3,當(dāng)前已有3個(gè)已經(jīng)到達(dá),都到齊了,繼續(xù)走啊


如有疑問請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

最新評(píng)論

盐城市| 黔江区| 巢湖市| 银川市| 若尔盖县| 永修县| 富宁县| 尚义县| 昌邑市| 甘谷县| 精河县| 玛多县| 台北县| 古浪县| 井研县| 水富县| 礼泉县| 邵阳县| 连江县| 磴口县| 康乐县| 九寨沟县| 大埔县| 谷城县| 全椒县| 清水河县| 板桥市| 邓州市| 无极县| 甘洛县| 象山县| 金塔县| 双鸭山市| 东港市| 宁南县| 庆安县| 织金县| 杭锦后旗| 保山市| 乌拉特前旗| 邮箱|