125 个版本 (16 个重大更新)

0.18.0 2024 年 8 月 16 日
0.17.0 2024 年 7 月 8 日
0.15.0-alpha.52024 年 3 月 29 日
0.12.0-alpha.22023 年 12 月 26 日
0.4.0 2023 年 3 月 28 日

#188内存管理

Download history 4267/week @ 2024-05-04 8044/week @ 2024-05-11 7831/week @ 2024-05-18 5326/week @ 2024-05-25 6322/week @ 2024-06-01 6133/week @ 2024-06-08 7609/week @ 2024-06-15 8416/week @ 2024-06-22 8591/week @ 2024-06-29 11327/week @ 2024-07-06 10960/week @ 2024-07-13 12127/week @ 2024-07-20 11455/week @ 2024-07-27 12319/week @ 2024-08-03 12330/week @ 2024-08-10 10795/week @ 2024-08-17

48,778 每月下载量
用于 33 个 Crates(5 个直接使用)

MIT/Apache

115KB
2K SLoC

运行时内存跟踪和分析。

rerun 系列库的一部分。

Latest version Documentation MIT Apache

这是一个用于跟踪运行中应用程序内存使用的库。这对于跟踪内存泄漏以及确定消耗内存的内容非常有用。

re_memory 包含了一个可选的采样分析器,用于收集分配调用栈。每次分配内存时,都有机会收集调用栈。这些信息会一直跟踪到释放。因此,您可以了解哪些调用栈导致了最多的活动分配,从而为您的运行中应用程序提供非常有用的内存配置文件,同时最小化开销。


lib.rs:

运行时内存跟踪和分析。

第一步

re_memory 添加到您的 Cargo.toml

cargo add re_memory

在您的 main.rs 文件中安装 AccountingAllocator

use re_memory::AccountingAllocator;

#[global_allocator]
static GLOBAL: AccountingAllocator<std::alloc::System>
    = AccountingAllocator::new(std::alloc::System);

检查内存使用情况

使用 MemoryUse::::capture 获取您应用程序当前的内存使用情况。

查找内存泄漏

main() 函数顶部开启内存跟踪

re_memory::accounting_allocator::set_tracking_callstacks(true);

现在运行您的应用程序一段时间,然后调用 accounting_allocator::::tracking_stats 获取统计信息。任何内存泄漏都将在 TrackingStatistics::::top_callstacks 中显示。

更多

另请参阅 accounting_allocator

依赖关系

约2-29MB
约416K SLoC