Skip to content

LeGamerDc/golony

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Golony

Golony 是一个高性能的 Go 容器库,提供以下特性:

特性

  • O(1) 时间复杂度的插入操作
  • O(1) 时间复杂度的删除操作
  • O(1) 时间复杂度的元素引用
  • 高效的元素遍历(跳过已删除元素)
  • 引用失效检测

技术实现

  • 采用了类似 C++ 库 plf::colony (std::hive) 中的 low complexity jump-counting pattern 来实现高效遍历
  • 使用 check pattern 机制来检测引用失效
  • 通过跳表优化遍历性能,避免遍历已删除的元素位置

使用场景

适用于需要频繁插入删除,同时要求保持元素引用稳定性的场景,例如:

  • 游戏开发中的实体管理
  • 大规模对象池
  • 需要频繁更新的数据结构

性能优势

  • 插入/删除操作不会导致其他元素的内存移动
  • 遍历时可以高效跳过已删除的元素
  • 通过引用失效检测机制确保内存安全

许可证

MIT License

About

colony go implemention

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages