译者前言 原文地址:Memory leaks 最近简单了解了下JavaScript的闭包和垃圾回收机制(GC),这中间也不得不接触内存泄露这个概念。然后不小心找到了这篇文章,看下来后理解了不少东西,于是译之与大家分享。 在JavaScript中,我们很少考虑到内存管理,但是它又是真实存在的...
分类:
编程语言 时间:
2015-06-22 16:15:54
阅读次数:
115
别让异常逃离析构函数为什么别让异常逃离析构函数,异常逃离析构函数会引发哪些问题?很明显,异常会带来不明确的行为。
如下代码:
当容器销毁时会调用析构函数,这时如果析构函数抛出异常,容器中剩余的元素还是应该被销毁,否则可能会有内存泄露。这时如果继续销毁其他元素,又出现异常的话,会同时存在两个异常。两个异常同时存在会导致不明确的行为。使用标准库的其他容器或TR1的任何容器或者array,也会遇到类似...
分类:
编程语言 时间:
2015-06-22 11:09:29
阅读次数:
232
垃圾回收(GarbageCollection,GC)是Java不同于c与c++的重要特性之一。他帮助Java自动清空堆中不再使用的对象。由于不需要手动释放内存,程序员在编程中也可以减少犯错的机会。利用垃圾回收,程序员可以避免一些指针和内存泄露相关的bug(这一类bug通常很隐蔽)。垃圾回收实际上是将...
分类:
编程语言 时间:
2015-06-21 20:56:12
阅读次数:
177
浏览器都有自己的内存销毁机制.谷歌:看当前的内存是否有东西在占用着,没有被占用的话,自己会在空闲的时候进行销毁.IE和火狐: var obj = {}; //计数一个堆内存 var obj2 = obj;通过计数器来判断是否有成员引用内存,如果计数器为零,则内存销毁.产生内存泄露的情况: 1....
分类:
其他好文 时间:
2015-06-20 18:18:17
阅读次数:
99
FastMM定位内存泄露的代码位置开源的FastMM,使用很简单,在工程的第一行引用FastMM4即可(注意,一定要在第一个Uses的位置),可以在调试程序时提示内存泄露情况,还可以生成报告。在Delphi2007以后版本中,使用更加简单,只需要在工程开始的位置加上语句:ReportMemoryLe...
分类:
其他好文 时间:
2015-06-19 14:57:45
阅读次数:
92
用Instruments检测内存泄露标签:Xcode原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。http://dawn110110.blog.51cto.com/3049492/899283IPhone上木有垃圾回收,动态申请的内存要自己记得释...
分类:
其他好文 时间:
2015-06-18 21:39:56
阅读次数:
121
网上看的一篇很好的文章;http://www.gforetell.com/?/question/id-111__uid-focus 不少人认为JAVA程序,因为有垃圾回收机制,应该没有内存泄露。其实如果我们一个程序中,已经不再使用某个对象,但是因为仍然有引用指向它,垃圾回收器就无法回收它,当然该对....
分类:
移动开发 时间:
2015-06-16 18:22:19
阅读次数:
203
前言不少人认为JAVA程序,因为有垃圾回收机制,应该没有内存泄露。其实如果我们一个程序中,已经不再使用某个对象,但是因为仍然有引用指向它,垃圾回收器就无法回收它,当然该对象占用的内存就无法被使用,这就造成了内存泄露。如果我们的java运行很久,而这种内存泄露不断的发生,最后就没内存可用了。当然jav...
分类:
移动开发 时间:
2015-06-16 14:41:11
阅读次数:
149
原谅地址:http://android-developers.blogspot.com/2009/01/avoiding-memory-leaks.html,英文原文在翻译之后Android 应用至少,在T-Mobile G1这个型号,就有16MB的堆内存。这个容量对于手机来说是很大了,但是对于有些...
分类:
移动开发 时间:
2015-06-16 12:23:09
阅读次数:
214
1.单例,成员变量有Context(如果这个Context是Activity的话就会内存泄露了),因为instance是静态的,持有context的引用public class Singleton{ public static Singleton instance; public Con...
分类:
其他好文 时间:
2015-06-16 10:58:59
阅读次数:
134