L4

L4 (Lock-Free on Read) Hashtable is a C++ library that implements hash table with arbitray byte stream keys/values.

Github星跟踪图

L4 HashTable

L4 (Lock-Free on Read) Hashtable is a C++ library that provides a fixed-size hashtable, where keys and values are arbitrary bytes.

L4 HashTable is optimized for lookup operations. It uses Epoch Queue (deterministic garbage collector) to achieve lock-free lookup operations.

L4 HashTable supports caching based on memory size and time. It uses Clock algorithm for an efficient cache eviction.

L4 HashTable is built with interprocess communication in mind and its shared memory implementation (multiple-readers-single-writer model at process level) is coming soon.

Installation

Visual C++ (Windows)

This library is developed and maintained with Visual Studio 2019. Visual Studio 2019 Community is available for free here.

To get started, open the L4.sln file and build the solution. Initially, it will automatically start downloading boost NuGet package before build starts.

GCC

This library is tested with GCC 6.2. You can run the following commands to get started:

cmake -DBOOST_ROOT=<boost root directory> CMakeLists.txt
make
make test

Getting Started

Start with a simple example.

Check out the wiki.

Contributing

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact opencode@microsoft.com with any additional questions or comments.

License

Code licensed under the MIT License.

概览

名称与所有者microsoft/L4
主编程语言C++
编程语言C++ (语言数: 3)
平台
许可证Other
发布数0
创建于2017-01-30 19:33:05
推送于2022-11-28 19:12:11
最后一次提交2022-11-28 19:12:11
星数193
关注者数15
派生数49
提交数35
已启用问题?
问题数5
打开的问题数4
拉请求数14
打开的拉请求数0
关闭的拉请求数1
已启用Wiki?
已存档?
是复刻?
已锁定?
是镜像?
是私有?
去到顶部