https://github.com/mitghi/lfring
Lock-Free MRMW Ring Buffer. Atomic Slice.
https://github.com/mitghi/lfring
Last synced: 12 months ago
JSON representation
Lock-Free MRMW Ring Buffer. Atomic Slice.
- Host: GitHub
- URL: https://github.com/mitghi/lfring
- Owner: mitghi
- License: mit
- Created: 2019-12-06T17:11:19.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-02-02T19:21:26.000Z (over 3 years ago)
- Last Synced: 2025-03-25T09:01:45.388Z (over 1 year ago)
- Language: Go
- Homepage:
- Size: 14.6 KB
- Stars: 4
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[](https://godoc.org/github.com/mitghi/lfring)
# lfring
Lock-Free MRMW Ring Buffer. It uses an implementation of Multi-Word Compare-and-Swap atomic operation, removes references by setting the associated slot to `nil` without losing consistency; ensures ordering and garbage collection.
The algorithm is from following Paper:
```
Paper: A Practical Multi-Word Compare-and-Swap Operation
by Timothy L. Harris, Keir Fraser and Ian A. Pratt;
University of Cambridge Computer Laboratory, Cambridge,
UK.
```