2020年Java面試題-----簡單介紹一下:synchronized 與lock區別

  1. lock是一個接口,而synchronized是java的一個關鍵字
  2. synchronized異常會釋放鎖,lock異常不會釋放,所以一般try catch包起來,finally中寫入unlock,避免死鎖。
  3. Lock可以提高多個線程進行讀操作的效率
  4. synchronized關鍵字,可以放代碼塊,實例方法,靜態方法,類上
  5. lock一般使用ReentrantLock類做爲鎖,配合lock()和unlock()方法。在finally塊中寫unlock()以防死鎖。
  6. jdk1.6之前synchronized低效。jdk1.6之後synchronized高效。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章