av手机免费在线观看,国产女人在线视频,国产xxxx免费,捆绑调教一二三区,97影院最新理论片,色之久久综合,国产精品日韩欧美一区二区三区

java語言

多線程的餓漢式和懶漢式

時間:2025-02-20 06:21:26 java語言 我要投稿
  • 相關推薦

多線程的餓漢式和懶漢式

  導語:多線程的單例設計模式保證某個類中內存中只有一個對象,分為餓漢式和懶漢式,讓我們了解一下吧!

  (1)餓漢式:

  class Single

  {

  private Single(){}//將構造函數(shù)私有化,不讓別的類建立該類對象

  private static final Single s=new Single();//自己建立一個對象

  public static Single getInstance()//提供一個公共訪問方式

  {

  return s;

  }

  }

  (2)懶漢式:

  class Single

  {

  private Single(){}

  private static Single s;

  public static Single getInstance()

  {

  if(s==null)

  s=new Single();

  return s;

  }

  }

  餓漢式和懶漢式的區(qū)別:

  **

  餓漢式是類一加載進內存就創(chuàng)建好了對象;

  懶漢式則是類加載進內存的時候,對象還沒有存在,只有調用了getInstance()方法時,對象才開始創(chuàng)建。

  **

  懶漢式是延遲加載,如果多個線程同時操作懶漢式時就有可能出現(xiàn)線程安全問題,解決線程安全問題

  可以加同步來解決。但是加了同步之后,每一次都要比較鎖,效率就變慢了,

  所以可以加雙重判斷來提高程序效率。

  如將上述懶漢式的Instance函數(shù)改成同步:

  public static Single getInstance()

  {

  if(s==null)

  {

  synchronized(Single.class)

  {

  if(s==null)

  s=new Single();

  }

  }

  return s;

  }


【多線程的餓漢式和懶漢式】相關文章:

java多線程的同步和異步09-05

Java多線程的定義狀態(tài)和屬性08-23

《除法豎式》教案07-06

參與式教學總結10-12

響應式網(wǎng)頁設計10-31

什么是響應式布局08-19

初中數(shù)學教案《多項式與多項式相乘》09-26

《多項式除以單項式》最新教學設計08-09

初一數(shù)學用字母表示數(shù)一次式和一次式的值的試題10-28