線程安全 在iOS開發(fā)中經(jīng)常會(huì)遇到一塊資源被多個(gè)線程共享的情況,也就是多個(gè)線程會(huì)訪問同一塊資源,比如多個(gè)線程訪問同一個(gè)對(duì)象、同一個(gè)變量、同一個(gè)文...
RunLoop:運(yùn)行循環(huán),可以讓程序不會(huì)馬上退出,而是保持運(yùn)行狀態(tài) , RunLoop的基本作用 保持程序的持續(xù)運(yùn)行 處理app中的各種事件(觸...
objc_msgSend執(zhí)行流程 OC中的方法調(diào)用,其實(shí)都是轉(zhuǎn)換為objc_msgSend函數(shù)的調(diào)用 在底層會(huì)這么調(diào)用objc_msgSend(...
Objective-C是一門動(dòng)態(tài)性比較強(qiáng)的編程語言,跟C、C++等語言有著很大的不同,Object-C的函數(shù)調(diào)用不是在編譯時(shí)期決定的,而是在運(yùn)行...
block本質(zhì)上也是一個(gè)OC對(duì)象,它內(nèi)部也有個(gè)isa指針,block是封裝了函數(shù)調(diào)用以及函數(shù)調(diào)用環(huán)境的OC對(duì)象。 Block的底層結(jié)構(gòu) bloc...
Category VS Extension Category category只能給某個(gè)已有的類擴(kuò)充方法,不能擴(kuò)充成員變量 category中也...
laod和initialize +load +load方法會(huì)在runtime加載類、分類時(shí)調(diào)用,每個(gè)類、分類的+load,在程序運(yùn)行過程中只調(diào)用...
KVO KVO的全稱是Key-Value Observing,俗稱“鍵值監(jiān)聽”,可以用于監(jiān)聽某個(gè)對(duì)象屬性值的改變,被監(jiān)聽的類會(huì)創(chuàng)建繼承于被監(jiān)聽類...
1.一個(gè)NSObject對(duì)象占用多少內(nèi)存 NSObject *obj = [[NSObject alloc] init];,obj占16個(gè)字節(jié),...