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

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

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

    在路上

    路上有驚慌,路上有理想

      BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
      28 Posts :: 1 Stories :: 10 Comments :: 0 Trackbacks

    1.迭代問題

      多線程環境下,迭代容易引起問題,如

      for(int i=0;i<v.size();i++){System.out.println(v.get(i))}

     解決辦法之一:

         客戶端加鎖

         for(int i=0;true;i++){

                       Sychronzied(v){

                                if(i<v.size()){

                                     System.out.println(v.get(i)

                                 }

                   }

    },當然這種也有問題,一旦程序可以重新設置元素位置,也會出錯。

    幸好有一種比較安全的辦法: copy遍歷對象

       Sychronzied(v){

                            Object v_clone= copy(v);

                   }

         iterateV(v_clone);

    2.Singleton

       單例習慣的方式,采用延時初始化,

       public static A getInstance(){

                       if(null==instance){

                         instance=new A();

                    }

                 return instance

       }

      在多線程模式下,需要加鎖,來保證同步Sychronized(object){}。

    如果初始化對象并不占用太多資源,其實沒有必要加鎖,畢竟同步也是很耗資源的。取消延時初始化,priavte static final instance=new A();

    3.順序化資源

       順序化資源是避免死鎖的簡單的方式。

       死鎖:T1時間,線程A 擁有objA的鎖,請求objB的鎖。線程B擁有objB的鎖,請求objA的鎖。

     如: System.identityHashCode(objA)<System.identityHashCode(objB)

     或者:public sychronized add(A a){sychronized(a){//do something}}

    4.wait and notify

    為了防止等待-通知機制出現race condition,需要加sychronized

    race condition:objA在被wait之前已經被另一線程objB 給notify 了, 之后的wait 會永久停止,并導致deadlock(死鎖),當然,如果你確認可以控制wait-notify很好,就不需要加了

    posted on 2010-10-28 11:45 阮步兵 閱讀(2002) 評論(0)  編輯  收藏 所屬分類: Java
    主站蜘蛛池模板: 最近最新MV在线观看免费高清| 97在线视频免费公开观看| 成人看的午夜免费毛片| 亚洲国产精品视频| 亚洲精品视频在线观看视频| 亚洲偷自拍另类图片二区| 免费中文熟妇在线影片| 免费很黄很色裸乳在线观看| 久久亚洲精品人成综合网| 亚洲另类无码一区二区三区| 女人被免费视频网站| 美女视频免费看一区二区| 亚洲色欲久久久久综合网| 中文字幕免费视频精品一| 亚洲第一精品福利| 特级一级毛片免费看| 中文字幕在线亚洲精品| 免费一级毛片无毒不卡| 亚洲精品WWW久久久久久| jizz18免费视频| 亚洲人成网站在线播放影院在线| 日韩亚洲人成网站| 久久精品国产精品亚洲| 久久综合九色综合97免费下载| 亚洲欧洲日产国码www| 国产成人免费a在线视频app| 亚洲制服丝袜一区二区三区| 免费看AV毛片一区二区三区| 日韩毛片一区视频免费| 亚洲国产精品国自产拍电影| 性做久久久久久免费观看| 亚洲av综合日韩| 亚洲成A人片在线观看WWW| 国产午夜亚洲精品不卡电影| 成人毛片18女人毛片免费视频未 | 国产人成网在线播放VA免费| 久久精品国产亚洲av成人| 中文字幕乱码系列免费| 亚洲精品国产福利片| 免费中文字幕一级毛片| 91福利视频免费观看|