posts - 0, comments - 0, trackbacks - 0, articles - 15
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          synchronized(this)的幾個簡單示例

          Posted on 2011-08-11 11:11 Cana 閱讀(194) 評論(0)  編輯  收藏 所屬分類: java
          本文來自CSDN博客,轉載請標明出處:http://blog.csdn.net/alex197963/archive/2009/08/06/4417414.aspx

          一、當兩個并發線程訪問同一個對象object中的這個synchronized(this)同步代碼塊時,一個時間內只能有一個線程得到執行。另一個線程必須等待當前線程執行完這個代碼塊以后才能執行該代碼塊。

          二、然而,當一個線程訪問object的一個synchronized(this)同步代碼塊時,另一個線程仍然可以訪問該object中的非synchronized(this)同步代碼塊。

          三、尤其關鍵的是,當一個線程訪問object的一個synchronized(this)同步代碼塊時,其他線程對object中所有其它synchronized(this)同步代碼塊的訪問將被阻塞。

          四、第三個例子同樣適用其它同步代碼塊。也就是說,當一個線程訪問object的一個synchronized(this)同步代碼塊時,它就獲得了這個object的對象鎖。結果,其它線程對該object對象所有同步代碼部分的訪問都被暫時阻塞。

          五、以上規則對其它對象鎖同樣適用.



          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 仙游县| 满洲里市| 平乡县| 泰和县| 甘泉县| 友谊县| 贵州省| 山丹县| 阜康市| 肥乡县| 三穗县| 文山县| 道孚县| 加查县| 锦屏县| 丽江市| 荔波县| 湛江市| 惠水县| 宿州市| 巩留县| 长葛市| 晋州市| 金阳县| 海宁市| 泾源县| 邹城市| 邯郸市| 金华市| 泸西县| 厦门市| 新津县| 高清| 清涧县| 准格尔旗| 石嘴山市| 杭锦后旗| 额济纳旗| 鄂尔多斯市| 延安市| 乃东县|