【文件属性】:
文件名称:boltdb_in_cpp:读取boltdb的源代码并在c ++中重新实现
文件大小:384KB
文件格式:ZIP
更新时间:2021-05-15 20:52:09
C++
C ++实现
:construction:正在施工:construction:
基于标记为1.3.1的版本
仅支持x86_64 linux
针对C ++ 11编译
将在ubuntu 18上进行测试
移植并通过所有测试用例后,与进行性能比较
需要重构,因为C ++强制使用语言功能进行封装
去做
统一的指针/共享的指针用法(在提供内存池时将不需要此指针)
创建每个txn内存池,并将其原始的“ new”替换为它的调用(进行中)
重新封装:避免令人讨厌的吸气剂并提供适当的用户界面
进步
节点
页
光标
桶
发射
*清单
D b
测试用例
之后
批量支持
地位
更好的错误信息
磁盘上的文件布局
文件
|第0页|第1页|第2页|第3页| ... | <-一般
|元0 |元1 |*列表|叶子页| ... | <-典型
页
页面布局:|页面标题| 页面内容|
页面标题:|页面ID | 标志| 数| 溢出|
页面类型:
【文件预览】:
boltdb_in_cpp-master
----.clang-format(323B)
----.gitignore(25B)
----third_party()
--------gmock()
--------valgrind()
----src()
--------meta.cpp(1KB)
--------db.cpp(16KB)
--------cursor.cpp(8KB)
--------util.cpp(2KB)
--------bucket.cpp(11KB)
--------types.cpp(993B)
--------node.cpp(14KB)
--------fnv()
--------txn.cpp(7KB)
----.travis.yml(90B)
----LICENSE(1KB)
----cmake()
--------Modules()
----include()
--------rwlock.h(1KB)
--------bucket_header.h(354B)
--------types.h(1KB)
--------memory_pool.h(3KB)
--------fnv()
--------meta.h(653B)
--------cursor.h(2KB)
--------node.h(3KB)
--------txn.h(2KB)
--------util.h(1KB)
--------db.h(7KB)
--------bucket.h(3KB)
----script()
--------readme(122B)
--------validators()
--------git-hooks()
--------helpers.py(3KB)
--------formatting()
----readme.md(4KB)
----build.sh(150B)
----test()
--------db()
--------bucket()
--------flock()
--------include()
--------txn()
--------CMakeLists.txt(3KB)
----CMakeLists.txt(1KB)