如果出现exc_bad_access错误,基本上是由于内存泄漏,错误释放,对一个已经释放的对象进行release操作。但是xcode有时候不会告诉你错误在什么地方(Visual Studio这点做得很好)。不过我们可以通过设置xcode环境变量环境变量NSZombieEnabled,Mallo...
分类:
数据库 时间:
2014-08-14 15:50:19
阅读次数:
221
[导语]内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中获得了更好的性能,更大的自由,C++菜鸟的收获则是一遍一遍的检查代码和对C++的痛恨,但内存管理在C++中无处不在,内存泄漏几乎在每个C++程序中都会发生,因此要想成为C++高手,内存管理一关是必须要过的,除非放弃...
分类:
编程语言 时间:
2014-08-14 10:39:28
阅读次数:
344
1.Valgrind简介 1.在我们编写C/C++的时候,最常见的错误之一就是内存泄露,这样的问题其实跟程序员的编程习惯密不可分。如果你在申请内存空间之后能够马上在合适的位置释放内存。会极大程度的避免内存泄漏的情况。但是人非圣贤,孰能无过。有时候我们确实忘记释放内存而导致了比较严重的错误,所以这个时...
分类:
系统相关 时间:
2014-08-11 14:36:32
阅读次数:
190
valgrind,linux下的内存检错工具...
分类:
系统相关 时间:
2014-08-11 12:03:22
阅读次数:
253
内存泄漏:1.缓存2.队列消费不及时3.作用域未释放缓存:必须要有过期策略1.缓存限制策略limitablemapLRU2.缓存解决方案进程自身不存储状态,进程外缓存 1)能减少常驻内存的对象的数量,让垃圾回收更高效 2)进程之间可以共享缓存常用的缓存:RedisMemcached
分类:
其他好文 时间:
2014-08-10 23:58:30
阅读次数:
657
手动内存管理(MRC)带来的问题: 1.0 由于开发者疏漏或不能正确的释放内存而导致的内存泄漏,从而引起程序的崩溃 2.0由于指针的到处传递而无法确定何时可以释放该指针所 指向的内存块。假如代码中某个位置释放了内存,而另一些地方还在使用指向这块内存的指针, 那么这些指针就变成了所谓的“野指针”(.....
分类:
其他好文 时间:
2014-08-10 18:18:20
阅读次数:
192
当基类确定被继承的时候,析构函数声明为virtual是必须的当返回的派生类的指针或引用的时候,调用析构函数容易发生内存泄漏当基类作为抽象类使用,声明pure virtual析构函数析构函数的顺序————派生类的析构函数先被调用(先析构基类成员)构造函数的顺序————派生类的构造函数先被调用(先构造基...
分类:
其他好文 时间:
2014-08-10 18:07:50
阅读次数:
277
Android App 内存泄露之工具(1)
使用内存监测工具
DDMS –> Heap
操作步骤
启动eclipse后,切换到DDMS透视图,并确认Devices视图、Heap视图都是打开的,没打开的直接Window>ShowView>自己选
将手机通过USB链接至电脑,链接时需要确认手机是处于“USB调试”模式
链接成功后,在DDMS的Device...
分类:
移动开发 时间:
2014-08-08 18:16:06
阅读次数:
325
内存管理是C++最令人切齿痛恨的问题,也是C++最有争议的问题,C++高手从中获得了更好的性能,更大的自由,C++菜鸟的收获则是一遍一遍的检查代码和对C++的痛恨,但内存管理在C++中无处不在,内存泄漏几乎在每个C++程序中都会发生,因此要想成为C++高手,内存管理一关是必须要过的,除非放弃C++,...
分类:
编程语言 时间:
2014-08-08 17:21:56
阅读次数:
224