13 个版本
0.1.13 | 2023年10月9日 |
---|---|
0.1.12 | 2023年2月13日 |
0.1.11 | 2023年1月31日 |
0.1.8 | 2022年6月13日 |
0.1.3 | 2021年6月24日 |
#612 在 算法
117 每月下载次数
被 13 个crate使用 (12 个直接使用)
15KB
166 行
memx-cdy
memx 的 c 接口:类似于 libc 的 memcmp(), memchr(), memmem(), memcpy(), memset() 等快速内存函数
功能
- 比 os libc 和 musl libc 更快
- 使用 LD_PRELOAD 替换动态 os libc
快速安装
- 您可以将此安装到 cargo 库路径
cargo build --release
mkdir -p $HOME/.cargo/lib
cp -a target/release/libmemx_cdy.so target/release/libmemx_cdy.a $HOME/.cargo/lib
- 您可以构建 Debian 软件包
cargo deb
并将 .deb 安装到您的本地 Debian 软件包仓库。
用法
易于使用,LD_PRELOAD。
- 使用场景:cargo install
$ LD_PRELOAD=~/.cargo/lib/libmemx_cdy.so command
或
$ export LD_PRELOAD=~/.cargo/lib/libmemx_cdy.so
- 使用场景:Debian 软件包
$ LD_PRELOAD=/usr/lib/libmemx_cdy.so.0.1 command
或
$ export LD_PRELOAD=/usr/lib/libmemx_cdy.so.0.1
在您的 Rust 源代码中使用此库的 2 步操作
- 将其添加到 Cargo.toml 的依赖项中
[dependencies]
memx-cdy = "0.1"
- 在 main 函数中调用
memx_init()
fn main() {
memx_cdy::memx_init();
//
// follow your code
}
变更日志
参考
memx
- 用于快速内存库的 Rust crate
memx 基准测试结果
memchr()
- 映射到 c memchr()memcmp()
- 映射到 c memcmp()memcpy()
- 映射到 c memcpy()memeq()
- 映射到 c bcmpr()memmem()
- 映射到 c memmem()memset()
- 映射到 c memset()
许可证
此项目根据以下其中一项许可证授权:
- Apache License, Version 2.0, (LICENSE-APACHE 或 https://apache.ac.cn/licenses/LICENSE-2.0)
- 麻省理工学院许可证(《LICENSE-MIT》或https://opensource.org/licenses/MIT)
由您选择。
依赖项
约1MB
约23K SLoC