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

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

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

    少年阿賓

    那些青春的歲月

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      500 Posts :: 0 Stories :: 135 Comments :: 0 Trackbacks
    1. 看到一個題目:針對下面的程序,寫出magic方法 讓整個程序只打印出step1,step2 不打印step3  

        public static void enter(Object obj) {
            System.out.println("Step 1");
            try {
       magic1(obj);
      } catch (Exception e) {
       // TODO Auto-generated catch block
       e.printStackTrace();
      }
            System.out.println("Step 2");
            synchronized (obj) {
                System.out.println("Step 3 (never reached here)"); 
            }
        }

     題目的意思很容易理解,可是要做出這道題目需要對多線程的基本改進非常的理解。

    下面列出基本思路:

     

     

    主線程想獲取obj的鎖,但是獲取不到,說明子線程始終在占據著這個對象的鎖。

    同時主線程又能返回。

    那現在就要實現讓子線程先跑,然后再喚醒主線程。這個顯然是鎖的占有和喚醒,那么問題來了,將什么做為這個鎖呢?如果是obj的話,不可能,因為子線程顯然不能在放掉obj.

    那么只能是子線程自己的鎖。

     

    下邊是程序

        static void magic1(final Object obj) throws Exception{
         final Thread t = new Thread(){
          public void run(){
           synchronized(this){
            synchronized(obj){
             try {
              notify();
           join();
          } catch (InterruptedException e) {
          }
            }
            
           }
           
          }
         };
         synchronized(t){
          t.start();
          t.wait();
         }
        }




    posted on 2012-11-09 21:37 abin 閱讀(359) 評論(0)  編輯  收藏 所屬分類: JavaMultithread
    主站蜘蛛池模板: 国产成人无码区免费内射一片色欲| 亚洲精品美女在线观看播放| 亚洲欧美国产国产一区二区三区| 无码av免费一区二区三区| 亚洲乱码中文字幕久久孕妇黑人| 免费一级毛片在线播放放视频| 男女交性永久免费视频播放| 亚洲综合小说另类图片动图| 妻子5免费完整高清电视| 久久狠狠爱亚洲综合影院| 在线观看无码AV网站永久免费| 亚洲精品在线电影| 国产91免费视频| 亚洲中文字幕乱码AV波多JI | 一区二区三区免费在线视频| 国产免费拔擦拔擦8x| 国产精品观看在线亚洲人成网| 国产99视频精品免费视频7| 国产成人亚洲综合a∨| 亚洲视频人成在线播放| 最近更新免费中文字幕大全| 久久亚洲一区二区| 久九九精品免费视频| 国产成人精品日本亚洲语音| 亚洲精品无码永久在线观看| 精品国产麻豆免费人成网站| 久久久久亚洲av无码专区| 成人无码区免费A片视频WWW| 亚洲GV天堂无码男同在线观看| 亚洲区不卡顿区在线观看| 在线看片免费人成视频福利| 亚洲经典在线观看| 免费日本黄色网址| 中文字幕免费视频精品一| 亚洲成无码人在线观看| 免费国产成人午夜私人影视| 久久美女网站免费| 亚洲欧洲AV无码专区| 欧洲亚洲国产清在高| 成人毛片18女人毛片免费| 国产97视频人人做人人爱免费|