
JVM
文章平均质量分 78
小鱼爱吃菜
在探索真理的道路上也一定要热爱生活呀
展开
-
synchronized和lock()的区别
二者的关系Lock接口的源码public interface Lock { /** * Acquires the lock. */ void lock(); /** * Acquires the lock unless the current thread is * {@linkplain Thread#interrupt interrupted}. */ void lockInterruptibly() th原创 2021-07-03 14:26:37 · 100 阅读 · 1 评论 -
JVM学完总结,这一篇对付面试足够了
前言通过这10多天对于JVM的初步学习,我从一个对于java底层知识认知的小白,渐渐地bo开了蒙住视野地面纱,下面首先是我对JVM知识点的一个汇总1.Java中会存在内存泄漏吗?请简单描述理论上,由于java当中有垃圾回收机制,只要是与主要对象无关的或者说没有被引用的对象,对他们进行回收,因此你以为可能不会有内存泄漏的问题;然而在实际开发过程当中可能会存在无用且可达的现象,换句话来说,就是这些对象不会被垃圾回收,因此也会导致内存泄漏的发生。例如Hibernate中的Session中的对象属于持久态,原创 2021-03-29 16:16:36 · 148 阅读 · 0 评论 -
虚拟机性能监控与故障处理工具
jps:虚拟机进程状况工具它的功能就是列出正在进行的虚拟机进程,并显示虚拟机执行主类(Main Class,main()函数所在的类)名称以及这些本地虚拟机唯一ID,实在难以理解的小伙伴可以看下图,那就是在可视化界面JConsole中双击之后显示的东西,第一个映入眼帘的就是进程数,这个首先就是jps的功能,如下图:jstat:虚拟机统计信息监视工具是用于监视虚拟机各种运行状态信息的命令行工具。它可以显示本地或者远程虚拟机进程的类装载、内存、垃圾收集、JIT编译等运行数据,在没有GUI图形界面,它就是原创 2021-03-28 17:52:15 · 141 阅读 · 0 评论 -
垃圾收集器与内存分配策略
对象互相访问的回收我们可能经常会看到,当两个对象之间互相访问的话,那么肯定就会有多余的内存可以释放出来,那么这个时候就可以进行对这些对象实例的回收,代码如下:public class Java3 { private Object instance;//在里面设置一个所有对象的实例 Byte b[]=new Byte[2*1024*1024];//这里设置其内存大小 public static void main(String[] args) {原创 2021-03-28 12:44:56 · 101 阅读 · 0 评论 -
通过IDEA 2020.3.1测试JVM垃圾回收
First写一段psvm的代码,如下面代码块所示:package JVM;public class java4 { public static void main(String[] args) { System.out.println("我是明怀"); }}然后,我们需要点击原创 2021-03-28 11:07:56 · 925 阅读 · 0 评论 -
自动内存管理机制
虚拟机栈和本地方法栈溢出如果线程请求的栈深度大于虚拟机所允许的最大深度,将抛出StackOverFlowError异常。如果虚拟机在扩展栈的时候无法申请到足够的内存空间,则会抛出OutOfMemoryError的异常.下面就来介绍一下出现StackOverFlowError这个出现的情况:package JVM;public class JavaVMStackSOF { //首先我们要做的就是建立一个线程,观看它是否能够出现栈的溢出,从而看出栈对应的存储大小 private int原创 2021-03-25 20:24:19 · 137 阅读 · 4 评论