Xcode8.0 IOS10中的Runtime Issues调试

今天整理Xcode8 的Debuging 新功能,Debug Memory Graph这个功能,以可视化的视图让开发者
一眼就能明了,并且能具体定位到某个方法,可以检测内存泄露,循环引用之类的问题。

1、配置Edit Scheme,如图1

Xcode8.0 IOS10中的Runtime Issues调试_第1张图片
图1.png

这里 Malloc Stack 有两个选项,一个是 All allocations,另一个是 Live Allocations Only。如果不开启这个,在最终的生成内存泄露的列表中将无法查看具体leak的函数堆栈信息。

2、运行app
3、运行完成后点击类似分享的按钮,如图2

图2.png

4、如果有问题,xcode会生成一个堆栈列表,如图3

图3.png

5、点击图3可以查看,如图4

Xcode8.0 IOS10中的Runtime Issues调试_第2张图片
图4.png

也可以点击,如图5,直接点击就可以查看某一个具体的问题


Xcode8.0 IOS10中的Runtime Issues调试_第3张图片
图5.png

6、点击图4,就是runtime issues里面的,就可以查看,可视化的界面,如下图,就是我写了一个循环引用引起的问题


Xcode8.0 IOS10中的Runtime Issues调试_第4张图片
B2788D49-F6E8-4249-BF8A-6EA78581F694.png

7、定位到具体犯错的位置,如下图。


Xcode8.0 IOS10中的Runtime Issues调试_第5张图片
3029EEA8-3849-4BE5-8A9A-DD25E13F0E10.png

8、点击某一个,就到对应的controller里面,错误方法,在的每一个位置,就直接能定位到。

Xcode8.0 IOS10中的Runtime Issues调试_第6张图片
09C51CC0-C114-44E2-ACC2-62AA973E4D21.png

最后总结,这个方法本人感觉很不错,毕竟改进了好多,可视化,还有就是layout一些错误也能检测到,感觉很完美,以后可以调试,不用花费那么大劲去找。

你可能感兴趣的:(Xcode8.0 IOS10中的Runtime Issues调试)