#内存(寄存器) ##枚举变量的内存布局 https://github.com/CoderMJLee/Mems ##类和结构体的内存布局 ...
分类:
其他好文 时间:
2020-08-12 15:41:58
阅读次数:
46
“free store” VS “heap” 当我问你C++的内存布局时,你大概会回答: “在C++中,内存区分为5个区,分别是堆、栈、自由存储区、全局/静态存储区、常量存储区”。 如果我接着问你自由存储区与堆有什么区别,你或许这样回答: “malloc在堆上分配的内存块,使用free释放内存,而n ...
分类:
编程语言 时间:
2020-07-24 16:03:35
阅读次数:
87
1. 运行时数据区架构图 2. 内存 内存是非常重要的系统资源,是硬盘和cpu的中间仓库及桥梁,承载着操作系统和应用程序的实时运行。JVM内存布局规定了JAVA在运行过程中内存申请、分配、管理的策略,保证了JVM的高效稳定运行。不同的jvm对于内存的划分方式和管理机制存在着部分差异(对于Hotspo ...
分类:
其他好文 时间:
2020-07-02 20:10:59
阅读次数:
55
1. 对象的实例化 1.1 创建对象的方式 new 最常见的方式 变形1 : Xxx的静态方法 变形2 : XxBuilder/XxoxFactory的静态方法 Class的newInstance():反射的方式,只能调用空参的构造器,权限必须是public Constructor的newInsta ...
分类:
其他好文 时间:
2020-07-02 20:04:57
阅读次数:
65
ZGC是一款在JDK11中新加入的具有实验性质的低延迟垃圾收集器,目前仅支持Linux/x86-64。ZGC收集器是一款基于Region内存布局的,(暂时)不设分代的,使用了读屏障、染色指针和内存多重映射等技术来实现可并发的标记-整理算法的,以低延迟为首要目标的一款垃圾收集器。 ZGC布局 与She ...
分类:
其他好文 时间:
2020-06-24 16:36:41
阅读次数:
75
1 前言 JDK官方提供了3个原子数组,它们提供了原子更新数组中元素的能力,它们主要借助Unsafe类实现其核心功能。 AtomicIntegerArray:原子更新整型数组里的元素 AtomicLongArray:原子更新长整型数组里的元素。 AtomicReferenceArray:原子更新引用 ...
分类:
编程语言 时间:
2020-06-21 09:39:07
阅读次数:
71
前言 ZGC是一款在JDK11中新加入的具有实验性质的低延迟垃圾收集器,目前仅支持Linux/x86-64。ZGC收集器是一款基于Region内存布局的,(暂时)不设分代的,使用了读屏障、染色指针和内存多重映射等技术来实现可并发的标记-整理算法的,以低延迟为首要目标的一款垃圾收集器。 ZGC布局 与 ...
分类:
其他好文 时间:
2020-06-20 21:50:39
阅读次数:
92
对象的内存布局 在 HotSpot 虚拟机中,对象的内存布局分为以下 3 块区域: 对象头(Header) 实例数据(Instance Data) 对齐填充(Padding) 对象头 对象头记录了对象在运行过程中所需要使用的一些数据: 哈希码 GC 分代年龄 锁状态标志 线程持有的锁 偏向线程 ID ...
分类:
其他好文 时间:
2020-06-06 00:56:24
阅读次数:
62
Java多线程基础:Synchronized关键字 对象的内存布局 下面的讨论都是针对HotSpot虚拟机。 首先我们来了解一下对象的内存布局,对象在内存中存储的布局整体可以分为3块区域: ...
分类:
编程语言 时间:
2020-06-01 11:57:31
阅读次数:
57
了解C++的同学都很清楚,C++有3个访问控制符,提供了对数据的封装,分别是public、protected与private。 private算是对数据保护得最严实的控制符了,一般都会说到private成员只能被类本身的成员函数以及类的友元访问,其他函数需要访问时, 大多数会封装一个public的s ...
分类:
编程语言 时间:
2020-05-18 20:30:56
阅读次数:
83