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

相关推荐
沐知全栈开发几秒前
CSS 下拉菜单
开发语言
WJX_KOI几秒前
保姆级教程:Apache Flink CDC(standalone 模式)部署 MySQL CDC、PostgreSQL CDC 及使用方法
java·大数据·mysql·postgresql·flink
追随者永远是胜利者4 分钟前
(LeetCode-Hot100)49. 字母异位词分组
java·算法·leetcode·职场和发展·go
吴声子夜歌5 分钟前
RxJava——Flowable与背压
android·java·rxjava
Thanwind10 分钟前
大二上结束随笔
java
keyborad pianist16 分钟前
Web开发 Day1
开发语言·前端·css·vue.js·前端框架
坚持就完事了17 分钟前
Python的类型注解
开发语言·python
wjs202427 分钟前
HTML URL 编码
开发语言
wjs202432 分钟前
Lua 循环
开发语言
Evand J41 分钟前
matlab GUI制作界面的一些笔记(入门)
开发语言·笔记·matlab