JVM内存和垃圾回收-03.运行时数据区概述及线程

在这里插入图片描述


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方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值