1. 程式人生 > >Java 基礎拾遺

Java 基礎拾遺

同步鎖 syn 類名 線程 span 對象 基本數據 tran .class

  集合存放的是對象的引用,不是基本數據類型,所以不可以放int啊等,可以放基本數據的包裝類,比如Integer。

 

同步鎖的方法:

1)寫個同步代碼塊

  syncronized(任意對象Obj){

  線程要操作的共享數據

  }

2)在方法聲明前加synchronized ,叫同步方法 ,對象鎖是本類對象引用this:

  public syncronized void payticket(){

  }

3)靜態同步代碼塊,對象鎖不是this,是本類類名.class :

  public static syncronized void payticked(){

  }

4)使用Lock接口,JDK5中有Lock接口,ReentrantLock是Lock的實現類,

  Lock lock= new ReentrantLock();

  調用Lock接口方法lock獲取鎖:

  lock.lock();

  try{

  //運行代碼塊

  }catch{

  }finally{

  //釋放鎖,使用Lock接口方法unlock():

  lock.unlock();

  }

Java 基礎拾遺