<b><font size=4>一、System靜態方法</font></b> 點擊查看代碼 package com.Tang.StringDay01; import org.junit.Test; public class DateTimeTest { /* System類中的currentTim ...
轉自:
http://www.java265.com/JavaMianJing/202205/16525413643372.html
同步鎖:
同步鎖是為了保證每個線程都能正常執行原子不可更改操作,同步監聽對象/同步鎖/同步監聽器/互斥鎖的一個標記鎖.
下文筆者講述Synchronized和ReentrantLock的不同之處,如下所示:
1.實現方式不同 Synchronized是JVM層面的關鍵字 ReentrantLock是API層面 2.可修改對象範圍不同 Synchronized可以修飾代碼塊和方法 ReentrantLock只能用於代碼塊 3.操作方式不同 Synchronized不需要手動釋放鎖 ReentrantLock需要手動釋放鎖 4.鎖方式不同 Synchronized是非公平鎖 ReentrantLock 可以通過參數指定為公平或者非公平 5.中斷方式不同 Synchronized等待不能中斷 ReentrantLock 等待可以中斷,tryLock 可以設置等待時長; 6.是否可重入 Synchronized和ReentrantLock都是可重入鎖