上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 30 下一页

2021年1月4日

聊聊BIO、NIO与AIO的区别(转)

摘要: 转自:https://www.cnblogs.com/blackjoyful/p/11534985.html 题目:说一下BIO/AIO/NIO 有什么区别?及异步模式的用途和意义? BIO:Apache,Tomcat(7及以下默认,8及以上默认NIO)。主要是并发量要求不高的场景NIO:Nginx 阅读全文

posted @ 2021-01-04 15:15 gogoy 阅读(209) 评论(0) 推荐(0) 编辑

2020年12月28日

JVM-即时编译

摘要: 即时编译(JIT just in time,默认是开启的)是一项用来提升应用程序运行效率的技术。通常而言,代码会先被 Java 虚拟机解释执行,之后反复执行的热点代码则会被即时编译成为机器码,直接运行在底层硬件之上。 HotSpot 虚拟机包含多个即时编译器 C1、C2 和 Graal(实验性质)。 阅读全文

posted @ 2020-12-28 15:04 gogoy 阅读(327) 评论(0) 推荐(0) 编辑

JVM-Java语法糖与Java编译器

摘要: 基本类型和其包装类型之间的自动转换,也就是自动装箱、自动拆箱,是通过加入[Wrapper].valueOf(如 Integer.valueOf)以及[Wrapper].[primitive]Value(如 Integer.intValue)方法调用来实现的。 Java 程序中的泛型信息会被擦除。具体 阅读全文

posted @ 2020-12-28 11:21 gogoy 阅读(91) 评论(0) 推荐(0) 编辑

2020年12月25日

JVM-Java虚拟机是怎么实现synchronized的?

摘要: 1. JVM的锁优化 今天我介绍了 Java 虚拟机中 synchronized 关键字的实现,按照代价由高至低可分为重量级锁、轻量级锁和偏向锁三种。 重量级锁会阻塞、唤醒请求加锁的线程。它针对的是多个线程同时竞争同一把锁的情况。Java 虚拟机采取了自适应自旋,来避免线程在面对非常小的 synch 阅读全文

posted @ 2020-12-25 10:59 gogoy 阅读(118) 评论(0) 推荐(0) 编辑

2020年12月24日

JVM-内存模型

摘要: 1. 一个反常识的例子 例: 1 int a=0, b=0; 2 3 public void method1() { 4 int r2 = a; 5 b = 1; 6 } 7 8 public void method2() { 9 int r1 = b; 10 a = 2; 11 } 这里我定义了两 阅读全文

posted @ 2020-12-24 16:45 gogoy 阅读(73) 评论(0) 推荐(0) 编辑

2020年12月18日

Safepoints: Meaning, Side Effects and Overheads(译文)

摘要: Safepoints: Meaning, Side Effects and Overheads (安全点:含义、副作用和开销) 去年,我一直在进行有关profiling以及JVM运行时/执行的一些讨论,在这两者中,我都发现自己遇到了安全点这一话题。 大多数人对安全点的存在一无所知,并且在一个人满为患 阅读全文

posted @ 2020-12-18 11:40 gogoy 阅读(201) 评论(0) 推荐(0) 编辑

2020年12月17日

JVM-垃圾回收

摘要: jvm大局观之内存管理篇(三):java如何判断哪些对象该被回收 1. JVM中的垃圾回收器-总览 针对新生代的垃圾回收器共有三个:Serial,Parallel Scavenge 和 Parallel New。这三个采用的都是标记 - 复制算法。其中,Serial 是一个单线程的,Parallel 阅读全文

posted @ 2020-12-17 17:28 gogoy 阅读(107) 评论(0) 推荐(0) 编辑

Java Lambda 表达式

摘要: Java Lambda 表达式 Lambda 表达式,也可称为闭包,它是推动 Java 8 发布的最重要新特性。 Lambda 允许把函数作为一个方法的参数(函数作为参数传递进方法中)。 使用 Lambda 表达式可以使代码变的更加简洁紧凑。 1 package java8; 2 3 /** 4 * 阅读全文

posted @ 2020-12-17 15:03 gogoy 阅读(145) 评论(0) 推荐(1) 编辑

2020年12月16日

JVM是如何处理反射的

摘要: 反射实现1-调用本地方法 例: 1 // v0版本 2 import java.lang.reflect.Method; 3 4 public class Test { 5 public static void target(int i) { 6 new Exception("#" + i).pri 阅读全文

posted @ 2020-12-16 11:17 gogoy 阅读(219) 评论(0) 推荐(0) 编辑

2020年12月15日

JVM 字节码指令手册 - 查看 Java 字节码

摘要: JVM 字节码指令手册 - 查看 Java 字节码 JVM 字节码指令手册 - 查看 Java 字节码 jdk 进行的编译生成的 .class 是 16 进制数据文件,不利于学习分析。通过下命令 javap -c Demo.class > Demo.txt 或者其他方式可反汇编,得到字节码文件 一、 阅读全文

posted @ 2020-12-15 10:41 gogoy 阅读(129) 评论(0) 推荐(0) 编辑

上一页 1 ··· 6 7 8 9 10 11 12 13 14 ··· 30 下一页

导航