https://github.com/mmcshane/lockfree-cpp
Some lockfree datastructures in C++
https://github.com/mmcshane/lockfree-cpp
Last synced: 7 months ago
JSON representation
Some lockfree datastructures in C++
- Host: GitHub
- URL: https://github.com/mmcshane/lockfree-cpp
- Owner: mmcshane
- License: mit
- Created: 2013-04-09T00:07:55.000Z (over 12 years ago)
- Default Branch: master
- Last Pushed: 2023-03-20T17:35:38.000Z (over 2 years ago)
- Last Synced: 2025-01-17T06:23:27.786Z (9 months ago)
- Language: C++
- Homepage:
- Size: 52.7 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
lockfree-cpp
============Some lock-free datastructures and tools in C++ that do not require C++11.
Included are
- A lock-free exchanger based on the JDK's java.util.concurrent.Exchanger
- An atomic tagged pointer type based on the JDK's
java.util.concurrent.atomic.AtomicReference
- An intrusive lock-free stack (LIFO) that uses operation elimination as
described in [A scalable lock-free stack algorithm](http://citeseer.ist.psu.edu/viewdoc/summary?doi=10.1.1.156.8728)
- An intrusive lock-free MPSC queue (FIFO) cribbed directly from the work of
[Dmitry Vyukov](http://www.1024cores.net/home/lock-free-algorithms/queues/intrusive-mpsc-node-based-queue)The datastructures themselves are header-only; you'll need pthreads and the
STL to compile the unit tests.Thanks to [Phil Nash](http://www.levelofindirection.com/about-me/) for his
[Catch](https://github.com/philsquared/Catch) unit test framework.