iOS中建立單例的兩種方式

2021-08-09 19:18:57 字數 537 閱讀 8011

剛剛開始做ios開發的時候,不知道怎麼建立單例,在網上搜的也大多數都不太全,所以總結了一下建立單例的兩種方式

首先在.h檔案中宣告類方法

1 +(instancetype)sharedutils;
然後在.m檔案中實現它,實現的方法有兩種

第一種,在建立乙個物件時先判斷在程式中有沒有建立過這個物件

1

static publicutils *defaultmanager =nil;

23 +(instancetype)sharedutils

4

第二種,直接利用系統提供的多執行緒技術dispatch_once

1 +(instancetype)sharedutils2);

89return

_sharedutils;

10 }

dispatch_once(&_once, ^{});

這個多執行緒的作用看名字估計就猜的差不多了:對於某個任務執行且只執行一次。

單例模式的兩種方式

首先,單例模式是指在程式執行的過程中,保證該類的例項只有乙個可以被外界訪問 可用於讀取配置檔案,以保證沒有對外部資源的併發操作 單例模式分為飽漢模式和飢漢模式。飽漢模式,也是我們說熟知的單例模式,為類在初始化的時候就進行了類的例項化,getinstance方法只需要自動獲取就可以了 飢漢模式為類在初...

單鏈表建立的兩種方式

建立單鏈表 單鏈表就是一種特殊的結構體組合而成的資料結構,關於單鏈表的建立方式有很多種,大同小異。在這裡我們將詳細的介紹一下頭插法建立鍊錶和尾插法建立鍊錶。如上所示單鏈表就是由可能不連續的資料所組合而成的資料結構。其中每個資料分為兩部分,一部分是資料儲存的位置,稱為資料域 data 另外指標所儲存的...

iOS中單例的建立方式

在ios中,單例的運用會出現在很多地方,一般會用在頁面間的傳值,從後乙個頁面向前乙個頁面進行傳值 單例 繼承與nsobject 單例在程式中只能初始化一次,並且只會在程式執行結束後才會銷毀,所以一些比較佔記憶體的操作不要寫在單例裡,不然會造成記憶體的擠壓 那麼下面我們先來看看單例是怎麼建立的 單例的...