|-----------|----------------------------------------------------------------------------------------------------------------|
| | 作用 |
| 栈区(stack) | * 存放函数的形参和局部变量(auto
类型),由编译器自动分配和释放。 * 生命周期与函数调用相关,函数结束时自动回收。 * 栈区的大小有限,通常较小。 * 例如,函数参数和局部变量。 |
| 堆区(heap) | * 由程序员手动申请和释放,需要注意避免内存泄漏。 * 存放动态分配的内存,如使用 malloc
或 new
。 * 生命周期由程序员控制,程序结束时可能由操作系统回收。 * 例如,动态分配的对象、数组等。 |
| 全局/静态存储区 | * 存放全局变量和静态变量(包括静态全局变量和静态局部变量)。 * 初始化的全局变量和静态局部变量放在一块,未初始化的放在另一块。 * 生命周期从定义开始到程序结束。 * 例如,全局变量、静态变量。 |
| 代码区 | * 存放程序的二进制代码。 * 内存由系统管理。 * 例如,程序的执行代码。 |
程序运行时,常见存储区分类及作用
qq_454175792024-03-20 17:52
相关推荐
Excuse_lighttime1 分钟前
JVM 机制蚰蜒螟2 小时前
jvm安全点(二)openjdk17 c++源码垃圾回收安全点信号函数处理线程阻塞DBWYX1 天前
JVM 精华jiedaodezhuti1 天前
为什么elasticsearch配置文件JVM配置31G最佳进击的雷神1 天前
数据库知识全面考查:从基础概念到实战应用昔我往昔2 天前
除了GC哪些地方有用到安全点胡子发芽2 天前
面试题:请解释Java中的垃圾回收机制(Garbage Collection, GC),并讨论不同的垃圾回收算法及其优缺点難釋懷2 天前
Android开发-在应用之间共享数据陵易居士2 天前
JVM-类加载子系统开源架构师3 天前
JVM 与云原生的完美融合:引领技术潮流