隨筆 - 3, 文章 - 152, 評(píng)論 - 17, 引用 - 0
          數(shù)據(jù)加載中……

          保留字synchronized的作用

          Synchronized是用來(lái)保證同一時(shí)刻本段代碼不會(huì)同時(shí)運(yùn)行。在操作系統(tǒng)中這些代碼被認(rèn)為是臨界段,如訪問(wèn)打印機(jī),磁盤,信號(hào)量等,只可能有一段代碼在使用這些臨界資源。其他必須等待。這類問(wèn)題在多cpu多線程的時(shí)候尤為要注意。
          Synchronized method(){}是用來(lái)保證同一時(shí)刻某方法不會(huì)被多個(gè)線程同時(shí)執(zhí)行,以免沖突.
          Synchronized (object){}是用來(lái)保證在執(zhí)行大括號(hào)中代碼時(shí),獨(dú)占o(jì)bject這個(gè)對(duì)象,所以,
          如果當(dāng)執(zhí)行到這里時(shí),如果object正被其他同步方法調(diào)用,則必須等候object被解鎖,才能進(jìn)入該程序塊,而當(dāng)進(jìn)入該程序塊時(shí),將對(duì)object上鎖,執(zhí)行完以后解鎖,以免在此期間,其他程序用到object.
          當(dāng)某個(gè)方法被同步化,則內(nèi)部的屬性也被同步化。獲得monitor的進(jìn)程獨(dú)占這些資源直到解鎖。這樣做保證某些變量被各個(gè)線程共享,并且變化是一致的

          posted on 2005-08-11 11:07 閱讀(316) 評(píng)論(0)  編輯  收藏 所屬分類: J2se

          主站蜘蛛池模板: 江永县| 隆安县| 通州区| 临沂市| 澄城县| 高尔夫| 深州市| 阿勒泰市| 巴里| 金沙县| 铁岭县| 衡山县| 武宣县| 仁怀市| 大渡口区| 安康市| 双柏县| 开江县| 英德市| 上饶市| 光山县| 土默特右旗| 荔波县| 樟树市| 临猗县| 吐鲁番市| 武功县| 宜黄县| 方正县| 泊头市| 桐梓县| 黑龙江省| 沙坪坝区| 林口县| 东方市| 湖南省| 卓尼县| 翼城县| 苏尼特右旗| 深圳市| 丰台区|