DirectMemory内存回收

简介: DirectMemory内存回收

既然DirectMemory不受jvm管理,那么这部分内存是不是不会回收呢,这次来探索这个话题。

当然还是来一段代码:

public class Jvm1_26 {
    static int _2G=1020*1024*1024*2;
    public static void main(String[] args) throws IOException {
        ByteBuffer byteBuffer=ByteBuffer.allocateDirect(_2G);
        System.out.println("内存分配完成");
        System.in.read();
        byteBuffer=null;
        System.gc();
        System.out.println("内存释放");
        System.in.read();
    }
}

System.in.read();//是为了阻止程序往下运行,方便我们查看内存变化。

我们运行程序,观察系统内存变化,第一次情况如下:

再往下执行

进程号都是3797,我们发现内存已经释放了,说明这部分内存还是会被回收。

目录
相关文章
|
9天前
|
NoSQL Java Redis
Redis系列学习文章分享---第十八篇(Redis原理篇--网络模型,通讯协议,内存回收)
Redis系列学习文章分享---第十八篇(Redis原理篇--网络模型,通讯协议,内存回收)
20 0
|
5天前
|
NoSQL 算法 Linux
【内附完整redis配置文件】linux服务器命令设置redis最大限制内存大小,设置redis内存回收机制,redis有哪些回收机制
【内附完整redis配置文件】linux服务器命令设置redis最大限制内存大小,设置redis内存回收机制,redis有哪些回收机制
7 0
|
11天前
|
存储 算法 安全
JVM-内存划分-垃圾回收器-回收算法-双亲委派-三色标记
JVM-内存划分-垃圾回收器-回收算法-双亲委派-三色标记
|
2月前
|
存储 缓存 NoSQL
Redis 内存回收
Redis 内存回收
26 3
|
2月前
|
算法 安全 Java
内存分配与回收策略
内存分配与回收策略
30 0
内存分配与回收策略
|
2月前
|
NoSQL 应用服务中间件 Linux
Redis的内存回收机制
Redis的内存回收机制
37 2
|
2月前
|
SQL Java 关系型数据库
flink cdc 内存问题之不会回收如何解决
Flink CDC(Change Data Capture)是一个基于Apache Flink的实时数据变更捕获库,用于实现数据库的实时同步和变更流的处理;在本汇总中,我们组织了关于Flink CDC产品在实践中用户经常提出的问题及其解答,目的是辅助用户更好地理解和应用这一技术,优化实时数据处理流程。
|
12月前
|
存储 监控 算法
优化内存利用:深入了解垃圾回收算法与回收器(二)
优化内存利用:深入了解垃圾回收算法与回收器(二)
94 0
|
2月前
|
存储 NoSQL Redis
|
7月前
|
存储 缓存 算法
百度搜索:蓝易云【彻底理解linux的内存回收】
总的来说,Linux的内存回收是一个复杂的过程,涉及到页面回收、页面交换、内存压缩和匿名页面丢弃等机制。这些机制的目标是在内存不足时释放不再使用的页面,并优化内存资源的利用,以提高系统的性能和响应速度。
128 1