Ferroc 内存分配器:现已发布第一个预发布正式版

💡 原文中文,约3900字,阅读约需10分钟。
📝

内容提要

Ferroc v1.0.0-pre.1已在crates.io上发布,包括减小allocate_*函数接口大小、优化代码生成和添加对C/C++的支持等改进。文章还解释了TLS缓存的使用,并提供了手动和自动管理缓存生命周期的示例。此外,还讨论了使用THREAD_DATA作为全局分配器的挑战,并提供了手动管理的替代方法。文章最后给出了C/C++用户下载和安装Ferroc库的说明。

🎯

关键要点

  • Ferroc v1.0.0-pre.1已在crates.io上发布,期待用户反馈以改进。
  • 主要改动包括减小allocate_*函数接口的Result大小,优化代码生成,增加C/C++支持。
  • TLS变量使用专门的缓存结构体,减少内存重复分配。
  • ferroc::heap::ThreadLocal提供手动或自动管理缓存生命周期的选项。
  • 自动管理示例展示了如何在栈上和TLS中使用ThreadData。
  • 手动管理生命周期依赖于ThreadLocal的assign、get和put方法,提供了两种示例。
  • C/C++用户可以通过Rust工具链下载和安装Ferroc库。
  • CMake支持多种配置选项,用户可自定义构建过程。
  • 基准测试结果更新,欢迎用户试用并提供反馈。
➡️

继续阅读