Java四种引用包括强引用,软引用,弱引用,虚引用。 强引用:只要引用存在,垃圾回收器永远不会回收Object obj = new Object();//可直接通过obj取得对应的对象 如obj.equels(new Object());而这样 obj对象对后面new Object的一个强引用,只有... ...
分类:
编程语言 时间:
2018-07-26 21:13:14
阅读次数:
181
JVM 是根据可达性分析算法找出需要回收的对象,判断对象的存活状态都和引用有关。 在 JDK1.2 之前这点设计的非常简单:一个对象的状态只有引用和没被引用两种区别。 这样的划分对垃圾回收不是很友好,因为总有一些对象的状态处于这两之间。 因此 1.2 之后新增了四种状态用于更细粒度的划分引用关系: ...
分类:
编程语言 时间:
2018-07-25 18:19:39
阅读次数:
145
参考链接:https://blog.csdn.net/kang_tju/article/details/76515894 https://www.cnblogs.com/TenosDoIt/p/3456704.html 1.auto_ptr: 输出结果: 2.unique_ptr:独享所有权的语义 ...
分类:
其他好文 时间:
2018-07-14 14:51:30
阅读次数:
213
Guava Cache [toc] 一、概述 1、内存缓存 可看作一个 jdk7的concurrentHashMap ,核心功能get,put 但是比一般的map多了一些功能,如: ??过限失效(根据不同的维度失效,读后N秒,写后N秒,最大size,最大weight) 自动刷新 支持软引用和弱引用 ...
分类:
系统相关 时间:
2018-07-07 01:11:25
阅读次数:
197
一、概述1、内存缓存2、核心数据结构二、具体实现0、一览众山小1、CacheBuilder 构建器2、LocalCache1)初始化2)put3)get4)清理软/弱引用一、概述1、内存缓存可看作一个jdk7的concurrentHashMap,核心功能get,put但是比一般的map多了一些功能,... ...
分类:
系统相关 时间:
2018-07-06 13:15:28
阅读次数:
225
1:引用计算法 用判断对象的是否被引用指向来确定是否应该回收对象,缺点在于两个对象互相引用的时候是不能被回收的 2:通过判断对象是否能直接到达GC roots对象来判断是否能回收。如果两个对象互相阴影,而又不可到达GCRoots也应该完成回收。 引用的分类: 强引用:就是在程序中普遍存在,类似new ...
分类:
编程语言 时间:
2018-07-03 11:46:39
阅读次数:
166
好多场景会导致循环引用,例如使用Block、线程、委托、通知、观察者都可能会导致循环引用。 1、委托 遵守一个规则,委托方持有代理方的强引用,代理方持有委托方的弱引用。 实际场景中,委托方会是一个控制器对象,代理方可能是一个封装着网络请求并获取数据的对象。 例如:ViewController中需从网 ...
分类:
移动开发 时间:
2018-06-15 16:10:51
阅读次数:
214
上一篇文章介绍了.Net 垃圾回收的基本原理和垃圾回收执行Finalize方法的内部机制;这一篇我们看下弱引用对象,代,多线程垃圾回收,大对象处理以及和垃圾回收相关的性能计数器。 让我们从弱引用对象说起,弱引用对象可以减轻大对象带来的内存压力。 弱引用(Weak References) 当程序的根对 ...
分类:
Web程序 时间:
2018-05-25 19:30:14
阅读次数:
320
过了一周了,进度似乎有点懈怠,不过过了周末重整旗鼓啦shell(外壳)GUI:Gnome,KDE,xfceCLI:sh,csh,ksh,bashbash(父进程)-----bash(子进程)他们相互独立彼此不知命令历史:historybash支持的引号:‘’命令替换(键盘~的按键)“”弱引用,可以实现变量替换``强引用,不完成变量替换文件名通配符:*:任意字符?:任意单个字符[]:匹配指定范围内的
分类:
系统相关 时间:
2018-05-21 14:43:34
阅读次数:
190