本文介绍以alloc函数为例,该函数位于哪个库,分析三种方式:
-
断点+control+step into跟踪方式 -
断点+符号alloc断点+Continue program execution跟踪方式 - 汇编跟踪
1、断点 + control + step into 跟踪方式
- 建立类
LNDPersonal,在alloc处断点位置
LNDPersonal *p = [LNDPersonal alloc];
- 此时按住
control+step into,如下图位置
image
- 直到定位到
objc_alloc,此时看到来自于libobjc.A.dylib库,如下图情况
image
2、断点 + 符号alloc断点 + Continue program execution跟踪方式
- 建立类
LNDPersonal,在alloc处断点位置
LNDPersonal *p = [LNDPersonal alloc];
- 此时设置
符号alloc断点,如下图方式
image
image
- 点击
Continue program execution,如下图位置
image
- 接下来xcode自动跳转到如下图情况,看到alloc来自于
libobjc.A.dylib库。
image
3、汇编跟踪
- 建立类
LNDPersonal,在alloc处断点位置
LNDPersonal *p = [LNDPersonal alloc];
-
Debug->Debug Workflow->Always Show Disassembly选中,如下图位置
image
- xcode自动跳转到汇编代码区域,如下图位置,拷贝
objc_alloc
image
-
objc_alloc建立符号断点,显示如下图结果,看到alloc来自于libobjc.A.dylib库。
image











网友评论