當一個線程進入一個對象的一個synchronized方法后?
可以進入其他非synchronized的方法,synchronized的方法不可以的!Java中的每個對象都有一個鎖(lock)或者叫做監視器(monitor),當訪問某個對象的synchronized方法時,表示的將該對象上鎖,此時其他任何線程都無法再去訪問該synchronized方法了,直到之前的那個線程執行方法完畢后(或者是拋出了異常),才將該對象的鎖釋放掉,其他線程才有可能再去訪問該synchronized方法。
如果一個對象有多個synchronized方法,某一時刻某個線程已經進入到了某個synchronized方法,那么在該方法沒有執行完畢前,其他線程是無法訪問該對象的任何synchronized方法的。