![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JVM
文章平均质量分 83
Younger成
这个作者很懒,什么都没留下…
展开
-
Java并发线程池
newCachedThreadPool:可复用线程池,线程数量无限制,容易cpu100%,队列并非无界队列,相较而言最不容易出现OOMnewFixedThreadPool:固定大小线程池,无边界阻塞队列,容易内存溢出(OOM)newSingleThreadPool:只有一个线程线程池核心参数:corePoolSize:核心线程数。默认情况下,核心线程会一直存活,但是当将allowCoreThreadTimeout设置为true时,核心线程也会超时回收。maximumPoolSize:线程原创 2022-02-04 11:00:35 · 193 阅读 · 0 评论 -
JVM类加载机制
一、类运行加载全过程如下图:其中loadClass的类加载过程如下:加载->验证->准备->解析->初始化->使用加载:在硬盘上查找并通过IO读入字节码文件、使用到类时才会加载。例如:调用类的main()方法、new对象等等,在加载阶段会在内存中生存一个代表这个类的java.lang.class对象,作为方法区这个类各种数据的访问入口验证:校验字节码文件的正确性准备:给类的静态变量分配内存,并赋予默认值解析:将符号引用替换为直接引用初始化:对类的原创 2022-02-02 23:37:56 · 689 阅读 · 0 评论 -
Jvm参数调优一
JVM内存结构:Java内存模型(多线程JMM)---Java内存结构(JVM虚拟机存储空间)Java内存结构方法区(永久区):static关键字修饰、常量信息当class文件被加载的时候方法区就会被初始化,方法区会被所有线程共享(注意线程安全问题)调优问题:web开发,定义太多常量不好,影响内存jvm参数调优:1、堆内存初始值和堆内存最大值一定要保持一致(减少垃...原创 2019-06-06 14:36:49 · 551 阅读 · 0 评论