Runtime就是將面向?qū)ο箝_發(fā)轉(zhuǎn)換為面向過程 (一)instance,classObject,metaClass 對象的isa指針指向自己的元...
Dart語言都是值傳遞,每次調(diào)用函數(shù)都是傳遞對象的內(nèi)存地址,而不是復(fù)制對象 優(yōu)點:熱重載(Hot Reload) 缺點:不支持熱更新,三方庫有限...
對象的釋放: NSObject調(diào)用dealloc后調(diào)用順序:dealloc --> objc_rootDealloc -->objc_dispo...
+(void)load{static dispatch_once_t onceToken;dispatch_once(&onceToken,^{...
在前文Dealloc中會調(diào)用objc_clear_deallocating; 此方法中會調(diào)用sidetable_clearDeallocatin...
自動釋放池構(gòu)造時,會調(diào)用objc_autoreleasePoolPush()函數(shù); 自動釋放池銷毀時,會調(diào)用objc_autoreleasePo...
+ (void)load方法 類的+load方法在main函數(shù)之前加載 然后是加載分類的+load方法 最后才加載main函數(shù) 原因:因為Obj...
Runloop是一個對象,通過內(nèi)部維護的事件循環(huán) 去管理 事件和消息; Runloop是一些RunloopMode的集合; 常用的幾種運行模式:...
Serial Dispatch Queue,這叫做串行隊列,要等待上一個執(zhí)行完,再執(zhí)行下一個; Concurrent Dispatch Queu...