#深入理解jvm

一文带你深入了解JVM性能调优以及对JVM调优的全面总结

JVM调优概念基本垃圾回收算法垃圾回收面临的问题分代垃圾回收详述1分代垃圾回收详述2典型配置举例1典型配置举例2新一代的垃圾回收算法调优方法反思数据类型Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的...

阿里面试官:字符串在JVM中如何存放?90%的人就真的只回答在哪里存放

目录:一道面试题的引出案例分析intern源码分析总结1.一道面试题的引出在面试BAT这种一线大厂时,如果面试官问道:字符串在JVM中如何存放?大多数人能顺利的给出如下答案: 字符串对象在JVM中可能有两个存放的位置:字符串常量池或堆内存。使用常量字符串初始化的字符串对象,它的值存放在字符串常量池中;使用字符...

对JVM还有什么不懂的?一文章带你深入浅出JVM!

/本文跟大家聊聊JVM的内部结构,从组件中的多线程处理,JVM系统线程,局部变量数组等方面进行解析JVMJVM=类加载器(classloader)+执行引擎(executionengine)+运行时数据区域(runtimedataarea)下面这幅图展示了一个典型的JVM(符合JVMSpecificationJavaS...

阿里小哥带你玩转JVM:揭秘try-catch-finally在JVM底层都干了些啥?

让我们准备一个函数: 然后,反编译他的字节码: 首先我们介绍异常表:在编译生成的字节码中,每个方法都附带一个异常表。异常表中的每一个条目代表一个异常处理器,并且由from指针、to指针、target指针以及所捕获的异常类型构成。这些指针的值是字节码索引用以定位字节码。下图就是我特别指出的JVM字节码...

哥们,你真以为你会做这道JVM面试题?

有关Java虚拟机类加载机制相关的文章一搜一大把,笔者这里也不必再赘述一遍了。笔者这里捞出一道code题要各位大佬来把玩把玩,如果你一眼就看出了端倪,那么恭喜你,你可以下山了:public class StaticTest{   public static&n...

java按值传递相关理解

Java没有引用传递只有按值传递,没有引用传递只有按值传递,值传递。1.publicclassTest{    publicstaticvoidmain(String[]args){        &...

对于单例模式的理解

  单例模式指的是一个类只会有一个实例,即是instance,javaweb中Servlet就是单实例多线程的,单实例运用场景很多,例如在计算机系统中,线程池、缓存、日志对象、对话框、打印机、显卡的驱动程序对象常被设计成单例,单例的好处:节省内存,不需要new出来那么多实例;配合线程同步;单例一般用于公共资源;  举个...
代码星球 代码星球·2021-01-30

JavaScript 对引擎、运行时、调用堆栈的概述理解

 随着JavaScript越来越流行,越来越多的团队广泛的把JavaScript应用到前端、后台、hybrid应用、嵌入式等等领域。这篇文章旨在深入挖掘JavaScript,以及向大家解释JavaScript是如何工作的。我们通过了解它的底层构建以及它是怎么发挥作用的,可以帮助我们写出更好的代码与应用。据GitHut统...

深入分析PHP优化及注意事项

 1.尽量静态化:如果一个方法能被静态,那就声明它为静态的,速度可提高1/4,甚至我测试的时候,这个提高了近三倍。当然了,这个测试方法需要在十万级以上次执行,效果才明显。其实静态方法和非静态方法的效率主要区别在内存:静态方法在程序开始时生成内存,实例方法在程序运行中生成内存,所以静态方法可以直接调用,实例方法...

Java虚拟机内存基础、垃圾收集算法及JVM优化

 1.1类加载子系统与方法区  类加载子系统负责从文件系统或者网络中加载Class信息,加载的类信息存放于一块称为方法区的内存空间。除了类的信息外,方法区中可能还会存放运行时常量池信息,包括字符串字面量和数字常量(这部分常量信息是Class文件中常量池部分的内存映射)。1.2Java堆  java堆在虚拟机启...

深入浅出吃透多线程、线程池核心原理及代码详解

  1、什么是线程  线程是一个操作系统概念。操作系统负责这个线程的创建、挂起、运行、阻塞和终结操作。而操作系统创建线程、切换线程状态、终结线程都要进行CPU调度——这是一个耗费时间和系统资源的事情。  2、线程生命周期  Java当中,线程通常都有五种状态,创建、就绪、运行、阻塞和死亡:创建状态。在生成线程对象,并没...

MYSQL学习之安装、主从复制、读写分离原理解析以及详细配置(MySQL5.7)

  1、查看mysql的安装情况rpm-qa|grep-imysql     2、删除上图安装的软件rpm-evmysql-community-libs-5.7.27-1.el6.x86_64--nodeps  3、都删除成功之后,查找相关的mysql的文件find/-namemysql     4、删除全部相关文件r...

最全排序算法原理解析、java代码实现以及总结归纳

  十种常见排序算法可以分为两大类:非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比较类排序。线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序。   详情如...

理解 HTTPS 工作原理(公钥、私钥、签名、数字证书、加密、认证)(转)

  本文摘录参考:细说CA和证书(主要讲解CA的使用)数字签名是什么?(简单理解原理)深入浅出HTTPS工作原理(深入理解原理)  HTTP协议由于是明文传送,所以存在三大风险:1、被窃听的风险:第三方可以截获并查看你的内容2、被篡改的危险:第三方可以截获并修改你的内容3、被冒充的风险:第三方可以伪装成通信方与你通信 ...

深入SpringBoot注解原理及使用

  首先,先看SpringBoot的主配置类:@SpringBootApplicationpublicclassStartEurekaApplication{publicstaticvoidmain(String[]args){SpringApplication.run(StartEurekaApplication.c...
首页上一页...1516171819...下一页尾页