当前位置:网站首页>JVM内存和垃圾回收-03.运行时数据区概述及线程
JVM内存和垃圾回收-03.运行时数据区概述及线程
2022-08-02 18:40:00 【J___code】

1.概念
- 内存:硬盘和CPU之间的仓库和桥梁,承载着操作系统和应用程序的实时运行
- JVM内存布局:该布局规定了Java在运行时内存申请、分配、管理的策略,保证JVM的高效稳定运行,不同的JVM对于内存的划分方式和管理机制存在差异
- JVM和线程的运行时数据区:JVM定义了若干程序运行时使用到的运行时数据区。一些随着JVM启动而创建(可以理解为启动一个JVM进程),随着JVM退出而销毁;另一些随着线程开始和结束而创建和销毁:
图中灰色部分为单个线程私有的数据区,包括PC寄存器、栈、本地栈;红色为多个线程共享的,包括堆和堆外内存(永久代或元空间、代码缓存)
tips:
- JVM内存布局中元数据区和
JIT编译产物合成为元空间(JDK8的名称,即方法区)- 垃圾回收主要针对堆区,小部分针对方法区
- 每个JVM只有一个
Runtime实例(即运行时数据区)
2.线程
- 线程是程序的运行单元,JVM允许一个应用有多个线程并行执行
- 在Hotspot JVM中,每个Java线程都和操作系统的本地线程直接映射(即线程准备执行时,本地线程也会同时创建;线程执行终止后,本地线程也会回收)
- 操作系统负责将所有线程调度到任何一个可用CPU上,一旦线程初始化成功,它就会调用Java线程中的
run方法
边栏推荐
猜你喜欢

Boyun Selected as Gartner China DevOps Representative Vendor
Interviewer: can you talk about optimistic locking and pessimistic locks

How to ensure the security of smart factories?

博云入选 Gartner 中国 DevOps 代表厂商

麦聪DaaS平台 3.7.0 Release 正式发布:全面支持国际化

cache2go-源码阅读

从技术全景到场景实战,透析「窄带高清」的演进突破

面试官:谈谈如何防止消息丢失和消息重复

微服务-gateway【服务网关入门】

LeetCode 1947. 最大兼容性评分和(状态枚举DP)
随机推荐
Functional test points for time, here is a comprehensive summary for you
What skills are the most practical for college students in communications?
[论文分享] VideoFlow: A Flow-Based Generative Model for Video
衡量软件产品质量的 14 个指标
MySQL LIKE – 语法和用法示例教程
Data Governance: The Evolution of Data Integration and Application Patterns
pydev debugger: warning: trying to add breakpoint to file that does not exist: /tmp/xxx
3年半测试经验,20K我都没有,看来是时候跳槽了
Why young people are snapping up domestic iPhone, because it is much cheaper and more populist
药品研发--工艺技术人员积分和职务考核评估管理办法
回收站删除的文件怎么恢复,2个方法汇总助您快速解决
Code Inspection for DevOps
视频隐写一
LeetCode 2336. 无限集中的最小数字(SortedSet)
WIFi 开关控制实现-ESP8266 物联网 android studio arduino QT多线程服务器
【C语言刷题】Leetcode203——移除链表元素
连续三次 | 灵雀云入选Gartner中国ICT技术成熟度曲线报告
研发了 5 年的时序数据库,到底要解决什么问题?
洛谷P2880 Balanced Lineup G
监控易火星版即将亮相:分布式运维帮助TOP3000大企业跨越管理鸿沟

