使用instrument真机调试时候遇到没有symbol文件的情况,需要在build setting当中设置debug information format将debug prod修改成为DRAWF 修改为 DRAWF with dSYM File。参见链接
疑问:100次循环 去读一个超大的字符串,然后怎么做,能够让读出来的数据读完就释放掉?
1、 未进行任何处理时,循环100次:
内存占用30.38kb
for循环100次
2、未进行任何处理时,循环10000次:
内存占用3.35Mb=3430kb
for循环10000次
3、在for循环外层加入autoreleasepool,并循环100次:
内存占用33.88kb,autoreleasepool释放后占用2.14kb
循环外autoreleasepool,for循环100次
4、在for循环内层加入autoreleasepool,并循环100次:
内存占用23.02kb
循环内autoreleasepool,for循环100次
5、使用系统提供的enumerateObjectsUsingBlock,进行循环100次,已知enumerateObjectsUsingBlock方法内部自带autorealesepool
内存占用22.66kb
image.png
对比1、2可知:instrument标记的内存allocation是指累计使用的量。