#mmap #文件 #读取 #写入 #追加 #API #内存映射

mmap-simple

使用非常简单的API对映射文件进行写入、读取、追加和删除

3个不稳定版本

0.2.0 2024年5月16日
0.1.1 2024年5月14日
0.1.0 2024年5月13日

#409 in Unix API

Download history 385/week @ 2024-05-11 56/week @ 2024-05-18 4/week @ 2024-05-25 1/week @ 2024-06-08

每月 99 次下载

MIT 许可证

16KB
204

mmap-simple

docs.rs crates.io

mmap-simple 是一个Rust库,用于简单的快速文件内存映射,提供了简单的API以进行写入、追加、读取和删除文件。

入门指南

要使用 mmap-simple,将其添加到您的 Cargo.toml 中的 [dependencies]

[dependencies]
mmap-simple= "0.1.0"

阅读文档以获取更多信息。


lib.rs:

一个简单的API,将文件基本处理为一个无限向量,可以在任何位置写入、追加、读取并任意缩小,且速度非常快。

文件使用libc调用进行内存映射,指定基本上是无限大的内存大小。但它不会消耗那么多的内存。仅在Linux上和单个调用者/进程中使用。所有写入调用在它们之后立即调用 sync_all,这并不理想,但也许我们以后会改进。

示例

use std::path::Path;
use mmap_simple::Mmap;

fn main() -> Result<(), Box<dyn std::error::Error>> {
    let mut mmap = Mmap::new(Path::new("example.txt"))?;
    mmap.append(b"Hello, world!")?;
    mmap.overwrite(0, b"Goodbye")?;
    mmap.drop_from_tail(6)?;
    mmap.append(b", world!")?;
    Ok(())
}

依赖项

~43KB