Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kvark/synqueue
Yet another MPMC queue
https://github.com/kvark/synqueue
concurrency data-structures
Last synced: 3 months ago
JSON representation
Yet another MPMC queue
- Host: GitHub
- URL: https://github.com/kvark/synqueue
- Owner: kvark
- License: mit
- Created: 2022-05-28T07:44:38.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-06-08T05:43:22.000Z (over 2 years ago)
- Last Synced: 2024-10-11T20:46:38.250Z (4 months ago)
- Topics: concurrency, data-structures
- Language: Rust
- Homepage:
- Size: 20.5 KB
- Stars: 6
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# synqueue
[![Build Status](https://github.com/kvark/synqueue/workflows/check/badge.svg?branch=main)](https://github.com/kvark/synqueue/actions)This is an experimental queue to be used in multi-threaded scenarios, like the task processors. More specifically:
- internally synchronized for both consumers and producers (MPMC).
- backed by an array, which is fast to access
- bounded: the capacity is specified at creationUnlike other implementations, such as `crossbeam-queue`, it doesn't carry a atomic bit per element.
Checked by both [Miri](https://github.com/rust-lang/miri) and [Loom](https://github.com/tokio-rs/loom) on CI.**Note**: experimental and currently slower than alternatives.