iOS alloc init

124 阅读1分钟

_dyld_start

libSystem_initializer

libdispatch_init

libobjc.A.dylib _objc_init 此处就是runtime底层原码,里面有很多类、分类、协议、私有方法。

alloc 后有了内存地址,指针;

Init 内存是不是一样!

怎么做到?init 有何用? 

objc_alloc

  1. 符号断点:  libobjc.A.dylib`objc_alloc:          _objc_rootAllocWithZone

  2. 汇编 跟流程 — 符号断点: objc_alloc

  3. 符号断点  确定未知 :libobjc.A.dylib ` + [NSObject alloc]:

20230731152024.png

联想截图_20230731151449.png

alloc —> _objc_rootAlloc —> callAlloc —> _objc_rootAllocWithZone —> objc_msgSend