def generator(): print(123) content = yield 1 print('=======',content) print(456) arg = yield 2 '''''' yield g1 = generator() g2 = generator() g1.__ne... ...
分类:
其他好文 时间:
2018-11-18 22:31:35
阅读次数:
185
G1垃圾回收器介绍 首先要搞清楚G1垃圾回收的过程 主要分为下面4个步骤: 初始标记(Initial Marking) 由于常规标记对象是否直接关联到GC roots,过程简单,停顿时间短 并发标记(Concurrent Marking) 由于可达性性分析,存在较长停顿 最终标记(Final Mar ...
分类:
其他好文 时间:
2018-11-13 13:09:12
阅读次数:
405
一、基础篇 JVM JVM内存结构 堆、栈、方法区、直接内存、堆和栈区别 Java内存模型 内存可见性、重排序、顺序一致性、volatile、锁、final 垃圾回收 内存分配策略、垃圾收集器(G1)、GC算法、GC参数、对象存活的判定 JVM参数及调优 Java对象模型 oop-klass、对象头 ...
分类:
其他好文 时间:
2018-11-06 00:48:40
阅读次数:
231
面试题1 主要考察知识点:生成器从头到尾只能取一次值 *list数据类型强转也可以读取生成器的值,g1被list读取完后g2已经读取不到了 面试题2 当for循环套上生成器表达式时就拆开,一定要注意生成器不调用时就不执行的特点(惰性) ...
分类:
编程语言 时间:
2018-11-03 00:02:42
阅读次数:
341
1. 生成器的惰性机制: 生成器只有在访问的时候才取值. 说白了. 你找他要他才给你值. 找他要. 他是不会执行的. def func(): print(111) yield 222 g = func() # ?成器g g1 = (i for i in g) # 生成器g1. 但是g1的数据来源于g ...
分类:
其他好文 时间:
2018-11-02 17:17:57
阅读次数:
138
一、邻接矩阵无向图的介绍 邻接矩阵无向图是指通过邻接矩阵表示的无向图。 上面的图G1包含了"A,B,C,D,E,F,G"共7个顶点,而且包含了"(A,C),(A,D),(A,F),(B,C),(C,D),(E,G),(F,G)"共7条边。由于这是无向图,所以边(A,C)和边(C,A)是同一条边;这里 ...
分类:
其他好文 时间:
2018-10-09 00:50:25
阅读次数:
169
一、邻接表无向图的介绍 邻接表无向图是指通过邻接表表示的无向图。 上面的图G1包含了"A,B,C,D,E,F,G"共7个顶点,而且包含了"(A,C),(A,D),(A,F),(B,C),(C,D),(E,G),(F,G)"共7条边。 上图右边的矩阵是G1在内存中的邻接表示意图。每一个顶点都包含一条链 ...
分类:
其他好文 时间:
2018-10-09 00:32:10
阅读次数:
154
Presto 如果启动时候 指定 CMS,那么 launcher run 会提示 G1 回收算法是 推荐的垃圾回收算法,针对 Presto 大内存 回收,G1 暂时 应该是最稳妥的选择,调整之后大约如下。 -server-Xmx100G-Xms100G-XX:-UseBiasedLocking-XX ...
分类:
其他好文 时间:
2018-10-04 10:04:46
阅读次数:
194
性能测试中除了需要做好性能测试外,我们还需要做性能测试后的,性能调优,需要发现性能问题,也需要做性能调优,在做性能调优中,jvm的性能调优是经常遇到的一个。 随着jdk版本的迅速变化,jdk里面的GC算法也是发生了很多变化,新版的jdk中,G1的已经成了jdk的默认算法了,性能测试中,我们经常关注的 ...
分类:
编程语言 时间:
2018-10-03 22:10:18
阅读次数:
419
内存: 局部变量 怎么判断是不是垃圾: 引用计数法 可达性分析(判断和GCroot有没有通路) 垃圾清理器: G1:整体标记整理,局部复制 CMS:标记清除算法 垃圾清除算法:1.标记清除2.复制3.标记整理 类加载:双亲委托(委托父类的类加载器,优点:使用更稳定的父类的包进行加载) ...
分类:
其他好文 时间:
2018-09-24 23:19:59
阅读次数:
160