- 博客(5)
- 问答 (1)
- 收藏
- 关注
原创 The VM session was closed before any attempt to power it on
大部分解决方案是给虚拟机文件赋权限或者以管理员启动虚拟机,本地环境的问题并未解决。关闭虚拟机及相关服务重新启动虚拟机即可。
2024-04-23 21:47:36 373
原创 JVM内存区域
从回收内存的角度看,由于现代垃圾收集器大部分都是基于分代收集理论设计的,所以Java堆中经常会出现新生代、老年代、Eden空间、From Survivor空间、To Survivor空间等名词,需要注意的是这种划分只是根据垃圾回收机制来进行的划分,不是Java虚拟机规范本身制定的。因此,为了线程切换后能恢复到正确的执行位置,每条线程都有一个独立的程序计数器,各个线程之间计数器互不影响,独立存储。主要作用是保证java程序的运行,保存的方法的局部变量,返回值,并参与方法的调用与返回。
2024-02-22 16:45:00 726 1
原创 类的生命周期
如果以上三个条件全部满足,jvm就会在方法区垃圾回收的时候对类进行卸载,类的卸载过程其实就是在方法区中清空类信息,java类的整个生命周期就结束了。区别于对象的初始化,类的初始化所做的一起都是基于类变量或类语句的,也就是说执行的都是共性的抽象信息。jvm对类加载时机没有明确规定,但对类的初始化有着明确规范:只有当类被直接引用的时候,才会触发类的初始化。类初始化是类加载的最后一步,该阶段才开始真正执行程序代码,之前的动作都由虚拟机主导。直接引用已经在类的初始化中的有过阐述,不再赘述。2.从jar文件中读取。
2024-02-22 10:00:00 830
原创 线程池【笔记】
线程池的出现不仅会提高系统性能,不会造成资源浪费,还能提高系统响应速度,方便管理,线程复用。不建议使用Executors创建线程池,无界阻塞队列会造成内存吃紧,最终导致OOM的可能,另外没有指定线程名称,不方便后续问题排查。ctl存储的是线程池状态和线程数量,32数字组成,高3位是线程池状态,低29位存储线程池数量。SHUTDOWN:关闭状态,不会接收新的任务,会处理未处理完成的任务。RUNNING:线程池处于运行中,接收新任务,正常处理任务。STOP:停止状态,不会接收新任务,会中断处理中的任务。
2024-02-21 10:53:20 293
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人