Skip to content

lispad/go-generics-tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GoLang Generics tools: Heap structure, sharded rw-locked map.

Go Report Card MIT License

Introduction

The Heap package contains simple binary heap implementation, using Golang generics. There are several heap implementations Details.

The ShardedLockMap package contains implementation of sharded lock map. Interface is similar to sync.map, but sharded lock map is faster on scenarios with huge read load with rare updates, and uses less memory, doing less allocations. Details

Compatibility

Minimal Golang version is 1.18. Generics and fuzz testing are used.

Installation

To install package, run:

go get github.com/lispad/go-generics-tools/binheap

or

go get github.com/lispad/go-generics-tools/smap

License

The binheap package is licensed under the MIT license. Please see the LICENSE file for details.

About

Binary Heap&top N, Sharded rw-locked maps using golang generics

Resources

License

Stars

Watchers

Forks

Packages

No packages published