hotspot

夜雨风云2 个月前
jvm·hotspot·调参·jvm调参
JVM调参实践总结JVM调优–理论篇从理论层面介绍了如何对JVM调优。这里再写一篇WIKI,尝试记录下JVM参数使用的最佳实践,注意,这里重点介绍HotSpot VM的调参,其他JVM的调参可以类比,但不可照搬。
夜雨风云2 个月前
jvm·jvm调优·hotspot·jvm性能分析·jvm性能监控
JVM调优--理论篇在对Java应用进行性能优化时,JVM的调优是一个绕不开的话题。本文重点介绍下如何对JVM进行调优,以期提高Java应用的性能、稳定性、响应时间等性能目标。JVM的调优过程符合Java应用的调优过程,主要分为三步:性能监控、性能分析、性能调优。此外,本文讨论的JVM均是指HotSpot VM,对于其他JVM,可以参考相关原理,并不能拿来就用。
zoeil8 个月前
java·开发语言·jvm·后端·hotspot
JVM-HotSpot虚拟机对象探秘目录一、对象的实例化(一)创建对象的方式(二)创建对象的步骤二、对象的内存布局(一)对象头(二)实例数据
一个有梦有戏的人8 个月前
java·jvm·后端·hotspot
【JVM系列】- 寻觅·方法区的内容😄生命不息,写作不止 🔥 继续踏上学习之路,学之分享笔记 👊 总有一天我也能像各位大佬一样 🌝分享学习心得,欢迎指正,大家一起学习成长!
鸠摩(马智)8 个月前
jvm·虚拟机·volatile·hotspot·内存屏障
详述Java内存屏障,透彻理解volatile一般来说内存屏障分为两层:编译器屏障和CPU屏障,前者只在编译期生效,目的是防止编译器生成乱序的内存访问指令;后者通过插入或修改特定的CPU指令,在运行时防止内存访问指令乱序执行。
鸠摩(马智)8 个月前
jvm·虚拟机·openjdk·hotspot
关于CAS等原子操作,说点别人没说的Java中提供了原子操作,可以简单看一下AtomicInteger类中的一个典型的原子操作incrementAndGet(),表示对原子整数变量进行加操作,并返回新的值。实现如下:
鸠摩(马智)9 个月前
jvm·虚拟机·openjdk·hotspot
C++在HotSpot VM中一种巧妙的内存管理方式在HotSpot VM中定义了一个Relocation类及相关的子类,可以通过这些类操作不同的重定位数据,如在CodeCache中读写这些数据。这些类需要的内存很小,但是不同的类需要的内存大小又不一样,所以做了如下的设计:
鸠摩(马智)9 个月前
jvm·虚拟机·openjdk·hotspot
C++的模板类在HotSpot VM中的应用模板是c++的一种特性,允许函数或者类通过泛型(generic types)的形式表现或者运行。模板可以使得函数或类在对应不同的类型(types)的时候正常工作,而无需为每一种类型分别写一份代码。
鸠摩(马智)9 个月前
jvm·虚拟机·hotspot·源代码
C++的动态分派在HotSpot VM中的重要应用众所周知,多态是面向对象编程语言的重要特性,它允许基类的指针或引用指向派生类的对象,而在具体访问时实现方法的动态绑定。C++ 和 Java 作为当前最为流行的两种面向对象编程语言,其内部对于多态的支持对于单继承的实现非常类似。
鸠摩(马智)9 个月前
java·jvm·虚拟机·openjdk·hotspot
C++指针和地址偏移在HotSpot VM中的应用在前面我们介绍过new运算符,这个操作实际上上包含了如下3个步骤:在第一步中,其实我们可以自己写个operator new函数对标准库函数进行重载,通常会根据类信息分配出需要的内存大小,但是分配内存的逻辑现在由我们自己控制,那我们就可以多分配一些内存,然后在多分配出来的内存上存储一些额外定义的信息。例如:
鸠摩(马智)10 个月前
jvm·虚拟机·openjdk·hotspot
C++ 重载运算符在HotSpot VM中的应用C++支持运算符重载,对于Java开发者来说,这个可能比较陌生一些,因为Java不支持运算符重载。运算符重载本质上来说就是函数重载。下面介绍一下HotSpot VM中的运算符重载。
鸠摩(马智)10 个月前
java·jvm·虚拟机·openjdk·hotspot
C++ RAII在HotSpot VM中的重要应用RAII(Resource Acquisition Is Initialization),也称为“资源获取就是初始化”,是C++语言的一种管理资源、避免泄漏的惯用法。C++标准保证任何情况下,已构造的对象最终会销毁,即它的析构函数最终会被调用。简单的说,RAII的做法是使用一个对象,在其构造时获取资源,在对象生命期控制范围之下对资源的访问始终保持有效,最后在对象析构的时候释放资源。 在HotSpot VM中,RAII对内存资源的管理和释放、明确定义范围锁及记录重要信息等方面起到了非常重要的作用。下面详细介