关于垃圾回收器GC(Garbage Collection),多数人意味它是Java语言的伴生产物。事实上,GC的历史远比Java悠远,于1960年诞生在MIT的Lisp是第一门真正使用内存动态分配和垃圾收集技术的语言。当Lisp尚在胚胎时期,开发人员就在思考GC需要完成的3件事情: 哪些内存需要回收 ...
分类:
编程语言 时间:
2017-07-15 17:49:48
阅读次数:
320
先来想这三个问题 内存泄露是怎么回事内存会泄露的原因避免内存泄露 1.内存泄露怎么回事 一个程序中,已经不须要使用某个对象,可是由于仍然有引用指向它垃圾回收器就无法回收它,当然该对象占用的内存就无法被使用,这就造成了内存泄露。 Android的一个应用程序的内存泄露对别的应用程序影响不大。 为了可以 ...
分类:
移动开发 时间:
2017-07-09 19:30:08
阅读次数:
108
另一篇参考:http://blog.csdn.net/u010947402/article/details/51878166 也许你已经熟练使用了java.util包里面的各种数据结构,但是我还是要说一说java版数据结构与算法,希望对你有帮助。 线性表,链表,哈希表是常用的数据结构,在进行Java ...
分类:
编程语言 时间:
2017-07-02 10:20:41
阅读次数:
235
https://github.com/saki4510t/UVCCamera UVCCamera 听名字就知道使用UVC( USB VEDIO CLASS) 协议的通用类库。linux原生支持,基本支持市面上所有免区USB摄像头。 此开源库包含JNI及android封装的类库。是目前最好用的安卓US... ...
分类:
移动开发 时间:
2017-06-29 12:44:40
阅读次数:
1537
第八章总结 8.5. heapq — 堆队列算法 有8个算法 最小堆封装 # 最小堆封装 from heapq import * import pprint class MinHeap: def __init__(self, iterable): self._iteralbe = [] self._ ...
分类:
编程语言 时间:
2017-06-22 00:23:55
阅读次数:
244
Runtime源码分析带你了解OC实现过程。其中参考了大量的大神的代码以及文献里面也有个人的见解欢迎拍砖欢迎交流。两种常见使用场景///weak属性@interfaceXX:XX@property(nonatomic,weak)Type*weakPtr;@end///代码块中使用{///使用__weak
__weakType*weakPtr=[[SomeObjectalloc]i..
分类:
其他好文 时间:
2017-06-21 20:05:39
阅读次数:
305
转自:http://www.cnblogs.com/gudi/p/6403953.html 1、强引用(StrongReference) 强引用是使用最普遍的引用。如果一个对象具有强引用,那垃圾回收器绝不会回收它。如下:Object o=new Object(); // 强引用 当内存空间不足,Ja... ...
分类:
编程语言 时间:
2017-06-15 20:37:27
阅读次数:
239
引用 先上个示例: 上述代码使val中包含自身,而产生了无限递归。上述示例表明Python中的变量名为引用类型,赋值只是使得左值指向与右值相同的内存对象。 is运算符可以判断两个引用是否指向了同一个对象,而==运算符判断两个引用指向的值是否相等而不关心指向什么对象。 对引用不了解的朋友,可以把Pyt ...
分类:
编程语言 时间:
2017-06-05 23:33:15
阅读次数:
177
内存泄露就是对象不在GC的掌控之内 下面对象会发生内存泄露现象: 1.没有引用的对象 2.虚,软,弱 引用对象 GC引用的对象指的是 1.JavaStack中引用的对象 2.方法区中静态引用指向的对象 3.方法区常量引用指向的对象 4.Native方法中JNI引用对象 5.Thread “活着的”线 ...
分类:
其他好文 时间:
2017-05-21 13:52:19
阅读次数:
122
弱引用:在引用对象的同时,允许垃圾回收该对象。 .NET中提供了WeakReference对象来实现这个功能。 对于那些创建便宜但耗费大量内存的对象,即希望保持该对象,又要在应用程序需要时使用, 同时希望GC必要时回收时,可以考虑使用弱引用。弱引用使用起来很简单, WeakReference w = ...