透過字節碼理解synchronized關鍵字

我們知道synchronied是java排它鎖的一種實現,支持可重入性,基於此我們可以實現多線程的一個同步。synchronied是怎麼實現的呢?其實synchronied關鍵字是基於對象的監視器即Monitor對象實現同步。一次只有一個線程可以鎖定監視器,試圖鎖定該監視器的任何其它線程都會被阻塞,知道他們可以獲取該監視器上的鎖定爲之。 同步代碼塊採用monitorenter、monitorexi
相關文章
相關標籤/搜索