
JVM
文章平均质量分 62
介绍JVM相关知识
LSZXZNJ
这个作者很懒,什么都没留下…
展开
-
类加载器窥探
.java文件 编译后,得到.class文件,JVM 需要 读取这些.class文件才能后运行。那么,如何读取.class文件呢?这就是 类加载器需要解决的问题。JDK提供的:java.lang.ClassLoader是一个抽象类实现ClassLoader的子类,以扩展Java虚拟机动态加载类的方式ClassLoader类使用委托模型来搜索类和资源:类加载器的每个实例都有一个关联的父类加载器。当请求查找类或资源时,类加载器实例将在尝试查找类或资源本...原创 2021-11-15 14:55:22 · 993 阅读 · 0 评论 -
JVM-GC日志
通过GC日志,可以看出来,每次GC 后面括号里都有原因,像 Allocation Failure。这就是 GC的触发原因,当分配空间失败,也就是 当前内存不足了,就会触发GC。第二行:因为 Metadata GC Threshold 引发的 Full GC,年轻代、老年代、元空间 都进行GC。第一行:因为 Metadata GC Threshold 引发的GC,年轻代 空间进行了GC。没有Full GC了,原来是因为 元空间太小,触发了 Full GC。每个空间用 [] 扩起来,不同空间用 ,分割。原创 2023-06-21 16:33:41 · 825 阅读 · 0 评论 -
virtual-machine shutdown hook 不执行
将应用打包后,上传至 linux 服务器,执行 java -jar xxx.jar 运行。因为 kill -9 ,是强制退出,这个时候jvm没办法执行hook了。如果用 kill -9 pid,hook 是不会执行的。添加一个 线程时,用于在结束应用时关闭资源。原创 2023-06-12 14:08:52 · 537 阅读 · 0 评论 -
JVM内存分析工具及注意事项
分析工具:jprofiler官网 收费Java Profiler - JProfilerJProfiler's intuitive UI helps you resolve performance bottlenecks,pin down memory leaks and understand threading issues.jprofiler 提供了简单易用的UI界面,帮助解决性能问题,确定内存泄漏,解决线程问题。When it comes to profiling.原创 2022-04-16 17:54:58 · 834 阅读 · 0 评论 -
JVM
类加载器1. 启动类加载器加载 JAVA_HOME\lib 下的 类文件。rt.jar2.扩展类加载器和应用程序类加载器,这两个加载器都继承自1)public abstract class java.lang.ClassLoader 类都是public class sun.misc.Launcher 的静态内部类2)static class ExtClassLoader extends URLClassLoader 作为扩展类加载器,主要加载 JAVA_HOME\li...原创 2020-11-15 17:43:17 · 228 阅读 · 0 评论 -
JVM设置(调优)
java-server 选择 "server" VM 默认 VM 是 server. -cp <目录和 zip/jar 文件的类搜索路径>-classpath <目录和 zip/jar 文件的类搜索路径> 用 ; 分隔的目录, JAR 档案 和 ZIP 档案列表, 用于搜索类文件。 -D<名称>=<值> 设置系统属性 ,(有时候 可以用 这个选项 给 jvm设置 系统属性,用于逻辑判断)java -X -.原创 2021-08-15 14:34:43 · 3525 阅读 · 0 评论