java性能監(jiān)控工具 java的多線程同步,什么是同一對(duì)象監(jiān)視器?監(jiān)視器是什么?
java的多線程同步,什么是同一對(duì)象監(jiān)視器?監(jiān)視器是什么?Java多線程監(jiān)視器是同步機(jī)制。通常,在執(zhí)行線程同步時(shí)使用關(guān)鍵字“synchronized”。它有一個(gè)參數(shù)監(jiān)視器,通常指這個(gè)參數(shù)。Synrho
java的多線程同步,什么是同一對(duì)象監(jiān)視器?監(jiān)視器是什么?
Java多線程監(jiān)視器是同步機(jī)制。
通常,在執(zhí)行線程同步時(shí)使用關(guān)鍵字“synchronized”。它有一個(gè)參數(shù)監(jiān)視器,通常指這個(gè)參數(shù)。
Synrhonized被廣泛使用。其應(yīng)用層的語(yǔ)義是,任何非空對(duì)象都可以用作“鎖”
當(dāng)synchronized作用于方法時(shí),它鎖定對(duì)象實(shí)例(this);
當(dāng)synchronized作用于靜態(tài)方法時(shí),它鎖定對(duì)象對(duì)應(yīng)的類(lèi)實(shí)例,因?yàn)轭?lèi)數(shù)據(jù)存在于持久帶中,所以靜態(tài)方法鎖相當(dāng)于類(lèi)的全局鎖;
當(dāng)synchronized作用于靜態(tài)方法時(shí),它會(huì)鎖定與對(duì)象對(duì)應(yīng)的類(lèi)實(shí)例,而對(duì)象實(shí)例會(huì)鎖定相應(yīng)的代碼塊。
在hotspot JVM實(shí)現(xiàn)中,鎖有一個(gè)特殊的名稱:object monitor。