gpt4 book ai didi

c - 什么时候会使用 malloc 而不是 zmalloc?

转载 作者:太空狗 更新时间:2023-10-29 14:55:00 24 4
gpt4 key购买 nike

关于我最近遇到的函数 zmalloc,在线或 stackoverflow 上的信息很少。 (事实上​​,这只是关于 SO 的第 3 个 zmalloc 标记问题)。

我收集了以下内容:

  • zmalloc 自动跟踪并释放未释放的内存,类似于 C++ 智能指针。
  • zmalloc 显然启用了一些指标,至少在 the case of the redis source 中是这样。 .

所以我的问题是:

  1. 那么,使用 zmalloc 而不是 malloc 会失去什么灵 active ?即 malloc 继续提供 zmalloc 不提供的哪些好处?
  2. zmalloc 在 C11 中是非标准的吗?这是自定义函数吗?

最佳答案

看起来 zmalloc 是 redis-tools ( https://github.com/antirez/redis-tools ) 的一部分。 redis 是一种将内容保存在内存中的数据库(http://redis.io/)。

通常开发 malloc 替代品是因为某些目标系统不提供合适的 malloc,或者因为调用者需要额外的功能。我认为 zmalloc 是系统 malloc/free 的一个非常简单的包装器,只是跟踪分配的整体内存。不涉及自动免费。您指向的帖子还解释了需求:数据库可以配置为不使用超过一定数量的内存,因此需要跟踪总体消耗。

关于c - 什么时候会使用 malloc 而不是 zmalloc?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22729730/

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