Java NIO中的mmap

Java中的mmap使用:

java 复制代码
static private final int start = 0;
static private final int size = 1024;
static public void main(String args[]) throws Exception {
    RandomAccessFile raf = new RandomAccessFile("D:\\IO\\mmap-test.txt", "rw");
    FileChannel fc = raf.getChannel();
    MappedByteBuffer mbb = fc.map(FileChannel.MapMode.READ_WRITE, 
    start, size);
    mbb.put(0, (byte) 97);
    mbb.put(1023, (byte) 122);
    raf.close();
}

Java中的mmap,是通过MappedByteBuffer实现,是一种DirectBuffer,也就是说是操作系统直接管理的内存

Linux mmap原理:

可以参考知乎上的这个【轻松突破文件IO瓶颈:内存映射mmap技术】:https://zhuanlan.zhihu.com/p/64016923

相关推荐
hanbr9 小时前
C++ 初涉
开发语言·c++
Дерек的学习记录9 小时前
C++:入门基础(下)
开发语言·数据结构·c++·学习·算法·visualstudio
hzc09876543219 小时前
Spring Integration + MQTT
java·后端·spring
云小逸9 小时前
【nmap源码解析】Nmap 核心技术深度解析:从源码到实战
开发语言·网络·windows·nmap
前路不黑暗@10 小时前
Java项目:Java脚手架项目的公共模块的实现(二)
java·开发语言·spring boot·学习·spring cloud·maven·idea
人道领域10 小时前
Spring核心注解全解析
java·开发语言·spring boot
云深麋鹿10 小时前
标准库中的String类
开发语言·c++·容器
金牌归来发现妻女流落街头11 小时前
日志级别是摆设吗?
java·spring boot·日志
脱离语言11 小时前
Jeecg3.8.2 前端经验汇总
开发语言·前端·javascript
MOONICK11 小时前
C#基础入门
java·开发语言