JVM源码探究:如何分析堆外内存的不可控性?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1308个文字,预计阅读时间需要6分钟。
概述:本文在之前写过的关于JVM源码分析之堆内外存储的基础上,完整解读了DirectByteBuffer的原理。重点讲述了DirectByteBuffer的原理,但今天遇到一个比较奇怪的问题,就是在设置了-XX:MaxDirectMemorySize后。
概述
之前写过篇文章,关于堆外内存的,JVM源码分析之堆外内存完全解读,里面重点讲了DirectByteBuffer的原理,但是今天碰到一个比较奇怪的问题,在设置了-XX:MaxDirectMemorySize=1G的前提下,然后统计所有DirectByteBuffer对象后面占用的内存达到了7G,远远超出阈值,这个问题很诡异,于是好好查了下原因,虽然最终发现是我们统计的问题,但是期间发现的其他一些问题还是值得分享一下的。
本文共计1308个文字,预计阅读时间需要6分钟。
概述:本文在之前写过的关于JVM源码分析之堆内外存储的基础上,完整解读了DirectByteBuffer的原理。重点讲述了DirectByteBuffer的原理,但今天遇到一个比较奇怪的问题,就是在设置了-XX:MaxDirectMemorySize后。
概述
之前写过篇文章,关于堆外内存的,JVM源码分析之堆外内存完全解读,里面重点讲了DirectByteBuffer的原理,但是今天碰到一个比较奇怪的问题,在设置了-XX:MaxDirectMemorySize=1G的前提下,然后统计所有DirectByteBuffer对象后面占用的内存达到了7G,远远超出阈值,这个问题很诡异,于是好好查了下原因,虽然最终发现是我们统计的问题,但是期间发现的其他一些问题还是值得分享一下的。

