logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

JVM内存模型

Java在诞生之初就提出了"Write once,Run Anywhere"的口号,而这些都得益于JVM(Java Vritual Machine),可以提前在不同的运行环境(linux或windows等)上安装JDK之后,就可以让同一份代码在任何地方运行了。而这里的JDK(Java Development Kit)是Java语言、Java虚拟机和Java类库的统称。一、JDK体系结构与Java跨

#java
Sentinel集成Nacos数据源

1.1 安装Sentinel控制台在https://github.com/alibaba/Sentinel/releases页面下载控制台的jar包,放到服务器某个文件夹下通过如下命令来启动控制台程序,-Dserver.port指定了端口为9010,如果出现端口冲突,可以指定其他端口java -Dserver.port=9010 -Dcsp.sentinel.dashboard.server=lo

#spring cloud#java#sentinel
详解JVM的常量池

在《JVM类加载机制》和《JVM内存模型》这两篇文章都对常量池和运行时常量池做了不少介绍,这篇文章再次聚焦常量池,搞清楚常量池到底都有什么。一、静态常量池与运行时常量池静态常量池也可以称为Class常量池,也就是每个.java文件经过编译后生成的.class文件,每个.class文件里面都包含了一个常量池,因为这个常量池是在Class文件里面定义的,也就是.java文件编译后就不会在变了,也不能修

文章图片
#java
详解Spring的GetBean方法

Spring容器提供了五种获取Bean的方式,可以根据beanName获取Bean,也可以根据classType来获取Bean,所有根据beanName来获取Bean的方式,底层都会通过调用下面的doGetBean()来获取Bean对象protected <T> T doGetBean(String name, @Nullable Class<T> requiredType

#spring#java
Java 内存模型

我们常说Java可以一次编译到处运行,得益于它不同的虚拟机,正是由于Java虚拟机屏蔽了各种底层硬件和操作系统访问的差异,保证了Java程序在各种平台上运行都能保证效果一致而Java内存模型(Java Memory Model,JMM),就是Java虚拟机提供了的一种符合内存模型的规范。一、计算机内存模型1.1 内存结构在介绍JMM之前,我们先简单介绍一下什么是内存模型,为什么需要内存模型以及内存

#java
深入理解Synchronized(二)

一、对象的内存布局在Hotspot虚拟机中,对象在内存中的布局分为三块区域:对象头(Header)、实例数据(Instance Data)和对其填充(Padding)。对象头:比如hash码,对象所属的年代,对象锁,锁状态标志,偏向锁(线程)ID,偏向时间,数组长度(数组对象才有)等实例数据:存放类的属性数据信息,包括父类的属性信息对齐填充:由于Hotspot虚拟机的自动内存管理系统要求对象起始地

#java
JVM内存分配机制

Java虚拟机最重要的工作就是如何给对象分配内存空间,以及通过GC如何回收已经不再使用的内存空间。这篇文章主要介绍JVM中的Java对象是创建过程、对象内存的分配机制以及对象内存的回收机制。一、对象的创建在前面的文章《JVM类加载机制》中讲过,JVM中所有对象的创建,都需要先将对应的.class文件加载进内存,所以JVM中通常一个对象的创建包含了如下几个步骤:1.1 检查类是否加载当JVM执行到n

#java
JVM内存模型

Java在诞生之初就提出了"Write once,Run Anywhere"的口号,而这些都得益于JVM(Java Vritual Machine),可以提前在不同的运行环境(linux或windows等)上安装JDK之后,就可以让同一份代码在任何地方运行了。而这里的JDK(Java Development Kit)是Java语言、Java虚拟机和Java类库的统称。一、JDK体系结构与Java跨

#java
CompletableFuture使用详解

一、简介1.1 概述在上一篇文章《CompletionService使用与源码分析》中,已经介绍过了Future的局限性,它没法直接对多个任务进行链式、组合等处理,需要借助并发工具类才能完成,实现逻辑比较复杂。而CompletableFuture是对Future的扩展和增强。CompletableFuture实现了Future接口,并在此基础上进行了丰富的扩展,完美弥补了Future的局限性,同时

#java
详解Spring的Bean销毁

一、注册Bean销毁逻辑Bean的生命周期中,在完成了Bean的创建之后,会注册Bean销毁的逻辑protected Object doCreateBean(String beanName, RootBeanDefinition mbd, @Nullable Object[] args)throws BeanCreationException {……registerDisposableBeanIf

#spring#java#spring boot
    共 11 条
  • 1
  • 2
  • 请选择