ARC 代碼編譯階段,在上下文中自動成對插入MRC下的retain和release方法,保證通過引用計數(shù)正確的管理內(nèi)存(針對堆上)。 iOS中引...
@property @property修飾的變量,會通過編譯器加入@synthesize自動合成為ivar+getter+setter(prop...
事件的生命周期 1、系統(tǒng)響應(yīng)階段:觸摸屏幕→IOKit(IOHIDEvent)→通過mach port(IPC進程間通信)轉(zhuǎn)發(fā)給SpringBo...
RunLoop的核心,主要是涉及到用戶態(tài)和內(nèi)核態(tài)的切換(mach_msg())。 基本作用 保持程序運行(main()的UIApplicatio...
基本原理 app進程的地址空間被分為代碼區(qū),數(shù)據(jù)區(qū),棧區(qū),堆區(qū),進程開始時mach-o文件會把各部分按需加載到對應(yīng)的內(nèi)存空間。 虛擬內(nèi)存 內(nèi)存管...
函數(shù)或函數(shù)指針+外部上下文變量 = 閉包,block其實是OC對閉包的實現(xiàn),配合dispatch_queue實現(xiàn)簡單的多線程異步。Dispatc...
多線程下為了訪問安全,對同一塊資源按照順序進行的線程同步技術(shù),加鎖最常見。 OSSpinLock 自旋鎖 申請鎖的操作為原子操作,保證只有一個線...
堆棧區(qū) 堆heap:內(nèi)存由程序員分配、釋放,地址不連續(xù),空間大,在OC中一般用來對對象的內(nèi)存管理。 棧stack:編譯器自動分配釋放,線性結(jié)構(gòu),...
iOS的渲染和繪制機制 顯示器原理和技術(shù) 電子槍逐行掃描(HSync),一幀畫面繪制完成后,復(fù)原準(zhǔn)備下一幀(VSync信號),此信號產(chǎn)生的頻率即...