![240](https://cdn2.jianshu.io/assets/default_avatar/10-e691107df16746d4a9f3fe9496fd1848.jpg?imageMogr2/auto-orient/strip|imageView2/1/w/240/h/240)
ARC 代碼編譯階段层亿,在上下文中自動成對插入MRC下的retain和release方法录择,保證通過引用計數(shù)正確的管理內存(針對堆上)拔莱。 iOS中引...
@property @property修飾的變量,會通過編譯器加入@synthesize自動合成為ivar+getter+setter(prop...
事件的生命周期 1隘竭、系統(tǒng)響應階段:觸摸屏幕→IOKit(IOHIDEvent)→通過mach port(IPC進程間通信)轉發(fā)給SpringBo...
RunLoop的核心塘秦,主要是涉及到用戶態(tài)和內核態(tài)的切換(mach_msg())。 基本作用 保持程序運行(main()的UIApplicatio...
基本原理 app進程的地址空間被分為代碼區(qū)动看,數(shù)據(jù)區(qū)尊剔,棧區(qū),堆區(qū)菱皆,進程開始時mach-o文件會把各部分按需加載到對應的內存空間须误。 虛擬內存 內存管...
函數(shù)或函數(shù)指針+外部上下文變量 = 閉包,block其實是OC對閉包的實現(xiàn)仇轻,配合dispatch_queue實現(xiàn)簡單的多線程異步京痢。Dispatc...
多線程下為了訪問安全,對同一塊資源按照順序進行的線程同步技術篷店,加鎖最常見祭椰。 OSSpinLock 自旋鎖 申請鎖的操作為原子操作,保證只有一個線...
堆棧區(qū) 堆heap:內存由程序員分配疲陕、釋放方淤,地址不連續(xù),空間大蹄殃,在OC中一般用來對對象的內存管理臣淤。 棧stack:編譯器自動分配釋放,線性結構窃爷,...
iOS的渲染和繪制機制 顯示器原理和技術 電子槍逐行掃描(HSync),一幀畫面繪制完成后姓蜂,復原準備下一幀(VSync信號)按厘,此信號產(chǎn)生的頻率即...