![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java性能调优
文章平均质量分 79
村西老朱
这个作者很懒,什么都没留下…
展开
-
java新建对象在堆中的分配
默认情况下,新生代和老年代大小比率是1:2;新生代又可分为eden区和survivor区,默认比例是8:1:1;大多数情况下,对象在eden区分配的,当eden区没有足够的空间进行分配时,就会触发minorGC,原创 2024-04-01 16:08:32 · 790 阅读 · 0 评论 -
JVM内存模型剖析
由于调整元空间的大小需要Full GC,这是非常昂贵的操作,如果应用在启动的时候发生大量Full GC,通常都是由于永久代或元空间发生了大小调整,基于这种情况,一般建议在JVM参数中将MetaspaceSize和MaxMetaspaceSize设置成一样的值,并设置得比初始值要大,对于8G物理内存的机器来说,一般我会将这两个值都设置为256M。1、当我们执行main方法的时候,会为主线程在栈中开辟一小块空间,也可以称为(线程栈),也就是说jvm会为每一个线程在栈中开辟一块独立空间。-Xmn:新生代大小。原创 2024-03-17 16:52:24 · 747 阅读 · 1 评论 -
Java类加载机制解析
1、引导类加载器:负责加载支撑JVM运行的位于JRE的lib目录下的核心类库,比如rt.jar、charsets.jar等 2、扩展类加载器:负责加载支撑JVM运行的位于JRE的lib目录下的ext扩展目录中的JAR类包 3、应用程序类加载器:负责加载ClassPath路径下的类包,主要就是加载你自己写的那些类 4、自定义类加载器:负责加载用户自定义路径下的类包原创 2024-03-03 19:16:31 · 863 阅读 · 1 评论 -
自定义类加载器以及如何打破双亲委派机制
自定义类加载器以及打破双亲委派规则代码示例原创 2024-03-08 11:27:24 · 413 阅读 · 1 评论