alloc底层探索

2021-06-09  本文已影响0人  黛沁馨1990

首先得说,这是第一次去探索苹果的底层代码,之前的所有oc开发,都只是基于xcode上可见的功能,偶尔看到底层代码,也都觉得头大,一掠而过,作为一个已经IOS行业呆了5、6年的人来说,显然是跟不上节奏的,学习是刻不容缓的。

今天学习到了底层源码的几种查看方法,就是一个简单对象的alloc方法源码位置查看。

方法一、下符号断点方法

    1.下一个alloc的符号断点,但先关闭

    2.当执行到代码alloc的时候,再打开这个符号断点

    3.继续运行,则会看到alloc方法所在源码库


方法二、control+step into

    1.在alloc的代码加断点

    2.执行到断点后,按住ctrl的同时点击xcode的step into,一直进入到线程里,可以看到执行了objc-alloc方法

    3.下objc-alloc的符号断点

    4.继续执行后,就可以看到源码位置所在libobjc.A.dylib

方法三、开启汇编查看方法

    1.打开汇编

    2.在alloc的代码位置进行断点,执行到汇编后,可以看到objc-alloc这个方法执行,这时候复制objc-alloc下一个符号断点

    3.继续执行,就可以看到源码位置

tips:

1.汇编打开方式:Debug->Debug WorkFlow -> Always show disasesmbly

2.知道源码所在库后下载源码方法:

       进入地址https://opensource.apple.com/tarballs/

        搜索对应名称,alloc方法知道属于库文件libobjc.A.dylib,搜索objc可以找到源码,有多个版本,找到最新的去下载查看

上一篇下一篇

猜你喜欢

热点阅读