A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© hee 中级黑马   /  2014-12-11 11:42  /  1311 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 hee 于 2014-12-14 21:58 编辑

内存溢出,内存泄漏怎么检查


6 个回复

倒序浏览
首先,得明白它们两的概念。
内存溢出就是空间不够用了,比如10个字节的空间,你却存了11个字节的文件进去,肯定会内存溢出。
内存泄露就是该释放的内存还没释放,导致这块内存一直被占据着。
可以通过anlyze静态分析方法检测出有无潜在的内存泄露。也可以在程序运行中通过leak检查出有无内存泄露。这两个检测方法都是xcode集成的。
回复 使用道具 举报
内存溢出内存泄露无非就是数组越界,和指针越界。不知道你用的什么平台。支持打断点的话就打断点。不支持就用现有的try catch。或者自己在可能出错的地方加输出代码。
回复 使用道具 举报
Xcode有内建工具可以查,功能很多种,查询泄漏的是leak,
有时候也可以拿来查询什么物件没有被释放掉,
蛮好用的
有兴趣的话可以去查查instruments相关介绍

螢幕快照 2014-12-11 23.06.22.png (257.11 KB, 下载次数: 46)

螢幕快照 2014-12-11 23.06.22.png

螢幕快照 2014-12-11 23.08.12.png (160.39 KB, 下载次数: 88)

螢幕快照 2014-12-11 23.08.12.png
回复 使用道具 举报
hee 中级黑马 2014-12-12 22:38:58
报纸
littledogboy 发表于 2014-12-11 16:01
内存溢出内存泄露无非就是数组越界,和指针越界。不知道你用的什么平台。支持打断点的话就打断点。不支持就 ...

恩恩,学习了
回复 使用道具 举报
hee 中级黑马 2014-12-12 22:39:59
地板
枫煠 发表于 2014-12-11 23:11
Xcode有内建工具可以查,功能很多种,查询泄漏的是leak,
有时候也可以拿来查询什么物件没有被释放掉,
蛮 ...

回答的真专业。
回复 使用道具 举报
hee 中级黑马 2014-12-12 22:41:27
7#
Littlekin 发表于 2014-12-11 15:59
首先,得明白它们两的概念。
内存溢出就是空间不够用了,比如10个字节的空间,你却存了11个字节的文件进去 ...

恩恩,了解了.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马