gpt4 book ai didi

rust - 在运行时查找结构的总大小

转载 作者:行者123 更新时间:2023-11-29 08:07:04 27 4
gpt4 key购买 nike

有什么方法可以在运行时计算结构的总堆栈和堆大小吗?

据我所知,std::mem::{size_of, size_of_val}仅适用于堆栈分配的值,但结构也可能包含堆分配的缓冲区(例如 Vec)。

最佳答案

Servo正在使用 heapsize crate 来测量程序期间堆分配的大小。

您可以调用heap_size_of函数通过 jemalloc 测量分配的堆大小。

请注意,使用不同的分配器可以获得不同的结果。


关于 Github:“这个箱子没有维护,Servo 不再使用它。在撰写本文时,Servo 使用内部 malloc_size_of。”

您可以使用heapsize crate,也可以查看malloc_size_of 的实现细节还有

关于rust - 在运行时查找结构的总大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57600563/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com