Objective-C循环引用检查器
这不是一个困难的问题。
我们只是介入Objective-C的init和dealloc方法,每个对象都会在生命周期开始和结束时执行这些方法。
如果您的实例对象有循环引用问题,这些对象可能不会被dealloc。
因此,我们设置一个计数器,将所有类的init加1,dealloc减1。
您可以看到,DashBoard数据源就这样产生了。
使用这个工具非常简单。
小心,这个工具不应该在生产环境中使用。
如果您使用CocoaPods 1. 在Podfile中添加Pod 'CRChecker'
,2. pod update,3. 就行了。
如果您想使用源代码,1. 访问Github下载最新版本的zip文件。2. 将CRChecker/CRChecker文件添加到您的项目中。3. 就行了。
版本1.0.1
CRCounter不会记录任何系统库,因为我们认为开发者应该关注自己的代码。
在您的代码中添加以下行:
[CRChecker addCustomClassPrefix:@"Demo"];;
只有带Demo前缀的类会被记录。
查看Wiki了解更高级的使用方法或简体中文说明。