JVM
JVM
java爱分享
java爱分享
展开
-
4、jvm监控工具
1、jps(jdk安装目录/bin)显示指定系统中所有的HotSpot虚拟机进程。jps -v显示进程号、MainClassName、启动时的JVM参数。2、jmap(jdk安装目录/bin)生成虚拟机的内存快照(headdump文件)。jmap -histo <pid>[C 表示char[][S 表示short[][I 表示int[][B 表示byte[][...原创 2019-12-29 19:22:34 · 288 阅读 · 0 评论 -
3、java内存模型
如何保持线程之间的可见性?volatile关键字,线程每次都从主内存获取数据,原有的工作内存数据失效。原创 2019-12-29 18:45:33 · 136 阅读 · 0 评论 -
2、jvm gc
gc:垃圾收集器、垃圾回收机制。1、判断对象是否可以回收引用计数:java在GC时会去看这个对象有没有任何引用与之关联,如果存在引用关系则表示这个对象还有用,不能被回收,如果不存在引用则可以基本定性为可被回收的对象了。使用此方式效率确实很高,但是有个致命的缺点,无法解决循环引用的问,例如下面这段代码:public class Main { public static void ma...原创 2019-12-18 19:54:05 · 181 阅读 · 0 评论 -
1、jvm内存模型
一、直接内存直接内存更准确的说不在JVM的堆范围内,但JVM会使用到。直接内存并不是JVM运行时数据区的一部分,但也会频繁的使用。在JDK 1.4引入的NIO提供了Channel与Buffer的IO方式,它可以使用Native函数库直接分配堆外的内存,然后使用DirectByteBuffer对象作为这块内存的引用进行操作,这样旧避免了Java堆和Native堆来回复制数据,因此在一些场景...原创 2019-12-18 16:35:20 · 384 阅读 · 0 评论