<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    java something

    不要以為......很遙遠
    隨筆 - 23, 文章 - 1, 評論 - 2, 引用 - 0
    數據加載中……

    控制3個線程運行順序的Demo

    本程序可以控制3個線程按順序執行, 代碼如下:

    public class Test3 {

     public static void main(String[] args) throws IOException {
      final Test obj = new Test();
      
      new Thread()
      {
       public void run()
       {
        obj.m1();
       }
      }.start();
      new Thread()
      {
       public void run()
       {
        obj.m2();
       }
      }.start();
      new Thread()
      {
       public void run()
       {
        obj.m3();
       }
      }.start();
      
     }

    }

    class Test
    {
     static int count;
     volatile int target = 1;
     synchronized void m1()
     { 
       for (int i = 0; i < 10; i++)
       {
        while (target == 2 || target == 3)
        {
         try {
          wait();
         } catch (InterruptedException e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
         }
        }
        System.out.println("m1() =" + i);
        target = 2;
        notifyAll();
       }
     }
     
     synchronized void m2()
     {
      for (int i = 0; i < 10; i++)
      {
       while (target == 1 || target == 3)
       {
        try {
         wait();
        } catch (InterruptedException e) {
         // TODO Auto-generated catch block
         e.printStackTrace();
        }
       }
       System.out.println("m2() =" + i);
       target = 3;
       notifyAll();
      }
     }
     
     synchronized void m3()
     {
      for (int i = 0; i < 10; i++)
      {
       while (target == 1 || target == 2)
       {
        try {
         wait();
        } catch (InterruptedException e) {
         // TODO Auto-generated catch block
         e.printStackTrace();
        }
       }
       System.out.println("m3() =" + i);
       target = 1;
       notifyAll();
      }
     }
    }

    posted on 2011-09-02 02:27 Jamie 閱讀(1769) 評論(2)  編輯  收藏 所屬分類: 多線程

    評論

    # re: 控制3個線程運行順序的Demo  回復  更多評論   

    類似于信號量.
    2012-08-10 23:24 | zxogj

    # re: 控制3個線程運行順序的Demo  回復  更多評論   

    用retrantLock 也可以把。
    2012-08-10 23:24 | zxogj
    主站蜘蛛池模板: 免费看黄视频网站| 一区二区三区视频免费| 亚欧日韩毛片在线看免费网站| 国产精品亚洲精品日韩已方 | 很黄很黄的网站免费的| 亚洲伦另类中文字幕| 日本免费电影一区二区| 亚洲av无码潮喷在线观看| 久久精品毛片免费观看| 亚洲综合色丁香麻豆| 在线观看成人免费视频不卡| 亚洲日韩国产精品乱-久| 老司机永久免费网站在线观看| 亚洲av午夜国产精品无码中文字 | 最新亚洲人成网站在线观看| 国产男女猛烈无遮挡免费视频网站| 中文字幕无码亚洲欧洲日韩| 日本久久久免费高清| 一级做a爰片性色毛片免费网站| 国产AⅤ无码专区亚洲AV| 久久久精品免费视频| 亚洲成年人电影网站| 免费涩涩在线视频网| 一本岛v免费不卡一二三区| 日本亚洲欧洲免费天堂午夜看片女人员 | 亚洲男人的天堂久久精品| 噼里啪啦电影在线观看免费高清 | 亚洲丝袜美腿视频| 欧美三级在线电影免费| 羞羞漫画在线成人漫画阅读免费| 国产亚洲精品成人AA片新蒲金| 99免费观看视频| 青草久久精品亚洲综合专区| 亚洲午夜未满十八勿入网站2| 999在线视频精品免费播放观看| 亚洲av无码专区国产不乱码| 在线精品亚洲一区二区三区| 亚洲免费闲人蜜桃| av电影在线免费看| 2020久久精品亚洲热综合一本| 国产亚洲自拍一区|