- 博客(4)
- 资源 (4)
- 收藏
- 关注
原创 Java多线程高并发(二) java内存布局
一 java对象创建 对象创建底层原理图:创建的对象我们如何知道其具体的内存布局情况呢?可以通过jol来查看。导入maven的openjdk.jol包 <dependency> <groupId>org.openjdk.jol</groupId> <artifactId>jol-core</artifactId> <ve...
2020-05-28 14:07:01 653
原创 JVM(六)---jvm压缩指针
一 什么是oop OOP = “ordinary object pointer” 普通对象指针。 启用CompressOops后,会压缩的对象: 1. 每个Class的属性指针(静态成员变量) 2. 每个对象的属性指针 3. 普通对象数组的每个元素指针 当然,压缩也不是万能的,针对一些特殊类型的指针,JVM是不会优化的。 比如指向 PermGen的Class 对象指针,本地变量,堆栈元素,入参,返回值,NULL指针不会被压缩二 为什么使用压缩指针 ...
2020-05-26 17:07:01 542 2
原创 Java多线程高并发(一) CAS原理
一 问题引入 当我们测试多个线程操作a++的时候,会出现以下结果public class CasDemo2 { public static void main(String[] args) { Castest castest=new Castest(); for(int i=0;i<10;i++){ ...
2020-05-18 17:35:25 985
转载 java内存模型以及valatile关键字
java内存模型(Java Memory Model,JMM)是java虚拟机规范定义的,用来屏蔽掉java程序在各种不同的硬件和操作系统对内存的访问的差异,这样就可以实现java程序在各种不同的平台上都能达到内存访问的一致性。可以避免像c++等直接使用物理硬件和操作系统的内存模型在不同操作系统和硬件平台下表现不同,比如有些c/c++程序可能在windows平台运行正常,而在linux平台却运行有...
2020-05-07 17:35:51 452
zooKeeper-3.4.8
2019-02-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人