gpt4 book ai didi

c++ - TCMalloc - 获取指针的分配大小

转载 作者:太空宇宙 更新时间:2023-11-04 07:57:06 25 4
gpt4 key购买 nike

使用 TCMalloc - 给定堆分配对象,有没有办法获得对象的分配大小(意味着只有 malloc 调用中传递的大小)?我要求一种“可靠”的方法(即,假设分配大小存储在指针之前,则不会返回一个字大小)

最佳答案

从版本 1.6 开始,TCMalloc includes :

size_t tc_malloc_size(void*);

它返回从参数开始的分配的可用大小。

它与 glibc malloc_usable_size(或 BSD 的 malloc_size)相同,libtcmalloc 包含这两个函数的别名。

但是,它不一定是最初请求的大小。它可能更大(通常是)。我不相信 TCMalloc(或大多数其他 malloc 实现)会保留该元数据,因此(afaik)既没有可靠的机制也没有不可靠的机制来返回原始 malloc 调用并检查请求大小。

关于c++ - TCMalloc - 获取指针的分配大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49281720/

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