Skip to content

这个仓库用于存放我写的各种cpp的小轮子

Notifications You must be signed in to change notification settings

ghost-him/ghost-him-cpp-kit

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 

Repository files navigation

我的 C++ 学习与实践项目

欢迎来到我的 C++ 学习与实践项目集!

本仓库旨在记录和索引我个人学习和实现 C++ 相关技术“小轮子”的过程。通过这些项目,我致力于提升自己的算法能力、代码设计水平以及对底层系统原理的理解。我会力求代码注释清晰、设计合理,并持续改进和修复发现的问题。

重要说明: 本仓库仅作为项目索引,不包含具体实现代码。每个项目都有其独立的 GitHub 仓库,您可以通过下方的链接访问。


已完成项目

内存池 (memory_pool)

  • 项目地址: https://github.com/ghost-him/memory_pool
  • 简介: 一个基于 C++ 实现的高性能、线程安全内存池。
  • 核心特点:
    • 三层缓存架构: 采用经典的线程缓存(Thread Cache)、中心缓存(Central Cache)、页缓存(Page Cache)设计,旨在最大限度地减少锁竞争,提高多线程环境下的内存分配和回收效率。
    • 小对象优化: 重点优化小于等于 16KB 的小内存块分配,缓存常用大小的对象,避免频繁调用系统内存分配接口。
    • 并发性能: 使用 std::atomic_flag 实现细粒度锁(分桶锁)和 std::mutex,平衡了性能与线程安全。
    • 动态调整与回收: 线程缓存能动态调整向中心缓存请求的内存块数量;中心缓存能将完全空闲的大块内存(Span)归还给页缓存;页缓存支持空闲页的合并,减少内存碎片。

未来计划

未来计划探索和实现更多有趣且有价值的 C++ 项目,例如:

  • 线程池
  • RPC 框架
  • 高性能日志系统
  • ... 更多敬请期待!

感谢您的关注!欢迎 Star 和 Fork 我各个项目的独立仓库,也欢迎提出宝贵的意见和建议!

About

这个仓库用于存放我写的各种cpp的小轮子

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published