- 博客(10)
- 收藏
- 关注
原创 11-直接内存
直接内存概述①. 不是虚拟机运行时数据区的一部分,也不是《Java虚拟机规范》中定义的内存区域②. 直接内存是Java堆外的、直接向系统申请的内存区间③. 代码演示:/** * IO NIO (New IO / Non-Blocking IO) * byte[] / char[] Buffer * Stream Channel * * 查看直接内存的占用与释放 */public class Buf
2022-03-06 20:39:29
248
原创 09-方法区
09-方法区一、栈、堆、方法区的交互关系运行时数据区结构图栈、堆、方法区的交互关系二、方法区的理解方法区在哪里?方法区的基本理解HotSpot 中方法区的演进三、设置方法区大小与 OOM设置方法区内存的大小如何解决这些 OOM ?四、方法区的内部结构方法区( Method Area )存储什么?方法区的内部结构类型信息域 ( Field )信息方法( Method )信息non-final 的类变量:补充说明:全局常量:static final运行时常量池 vs 常量池为什么需要常量池?常量池中有什么?运行
2021-07-26 22:58:35
565
原创 08 - 堆
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码
2021-07-23 09:53:27
180
原创 07 - 本地方法栈
07 - 本地方法栈Java 虚拟机栈用于管理 Java 方法的调用,而本地方法栈用于管理本地方法的调用。本地方法栈,也是线程私有的。允许被实现成固定或者是可动态扩展的内存大小。(在内存溢出方面是相同的)如果线程请求分配的栈容量超过本地方法栈允许的最大容量,Java 虚拟机将会抛出一个 StackOverflowError 异常。如果本地方法栈可以动态扩展,并且在尝试扩展的时候无法申请到足够的内存,或者在创建新的线程时没有足够的内存去创建对应的本地方法栈,那么 Java 虚拟机将会抛出一个 O
2021-07-02 22:47:17
130
原创 06-本地方法接口
06-本地方法接口一、pandas是什么?二、使用步骤1.引入库2.读入数据总结一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport pandas as pdimport matplotlib.pyplot as pltimport seaborn as snsimport warningswarnings.filterwarnings('
2021-07-02 22:33:50
100
原创 05-虚拟机栈
05-虚拟机栈1、虚拟机栈概述**虚拟机栈出现的背景**内存中的栈与堆一、pandas是什么?二、使用步骤1.引入库2.读入数据总结1、虚拟机栈概述虚拟机栈出现的背景由于跨平台性的设计, Java 的指令都是根据栈来设计的。不同平台 CPU 架构不同,所以不能设计为基于寄存器的。优点是跨平台,指令集小,编译器容易实现,缺点是性能下降,实现同样的功能需要更多的指令。内存中的栈与堆栈是运行时的单位,而堆是存储的单位。栈解决程序的运行问题,即程序如何执行,或者说如何处理数据。堆解决的是数据存储
2021-05-30 22:46:38
167
原创 04-程序计数器(PC寄存器)
04-程序计数器一、PC Register 介绍二、举例说明三、两个常见的问题cpu时间片理解串行、并行、并发一、PC Register 介绍JVM 中的程序计数寄存器( Program Counter Register )中, Register 的命名源于 CPU 的寄存器,寄存器存储指令相关的现场信息。 CPU 只有把数据装载到寄存器才能够运行。这里,并非是广义上所指的物理寄存器,或许将其翻译为 PC 计数器(或指令计数器)会更加贴切(也称为程序钩子),并且也不容易引起一些不必要的误会。
2021-05-15 21:52:18
572
原创 03-运行时数据区概述以及线程
03-运行时数据区概述以及线程一、 概述内存布局:二、线程JVM系统线程一、 概述内存是非常重要的系统资源,是硬盘和 CPU 的中间仓库及桥梁,承载着操作系统和应用程序的实时运行。 JVM 内存布局规定了 Java 在运行过程中内存申请、分配、管理的策略,保证了 JVM 的高效稳定运行。不同的 JVM 对于内存的划分方式和管理机制存在着部分差异。结合 JVM 虚拟机规范,来探讨一下 经典的 JVM内存布局:Java 虚拟机定义了若干种程序运行期间会使用到的运行时数据区,其中有一些会随着虚拟机启
2021-05-13 20:34:02
103
原创 02 - 类加载子系统
02 - 类加载子系统02 - 类加载子系统02 - 类加载子系统一、 内存结构概述二、类加载器与类的加载过程**类加载器子系统作用**类加载器classLoader的角色类的加载过程加载链接初始化一、 内存结构概述二、类加载器与类的加载过程类加载器子系统作用类加载器子系统负责从文件系统或者网络中加载 class 文件, class 文件在文件开头有特定的文件标识。ClassLoader 只负责 class 文件的加载,至于它是否可以运行,则由 Execution Engine 决定。
2021-05-11 22:55:04
311
原创 01-JVM与Java体系
01-JVM和Java体系架构一、前言二、JAVA及JVM简介1.java是跨平台语言2.字节码3.多语言混合编程三、虚拟机与java虚拟机虚拟机Java 虚拟机作用特点JVM位置四、 JVM 的整体结构五、Java 代码执行流程六、JVM 的架构模型总结七、JVM的生命周期一、前言大部分的开发人员对jvm的接触少之又少开发人员如何看待上层框架:一些有一定工作经验的开发人员,打心眼儿里觉得 SSM 、微服务等上层技术才是重点,基础技术并不重要,这其实是一种本末倒置的“病态”。如果我
2021-05-05 21:48:03
372
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅