-
parking_lot
More compact and efficient implementations of the standard synchronization primitives
-
spin
Spin-based synchronization primitives
-
rayon
work-stealing parallelism for Rust
-
dashmap
Blazing fast concurrent HashMap for Rust
-
thread_local
Per-object thread-local storage
-
flume
A blazingly fast multi-producer channel
-
async-channel
Async multi-producer multi-consumer channel
-
crossbeam
Tools for concurrent programming
-
ringbuf
Lock-free SPSC FIFO ring buffer with direct access to inner data
-
async-lock
Async synchronization primitives
-
oneshot
spsc channel with (potentially) lock-free non-blocking send, and a receiver supporting both thread blocking receive operations as well as Future based async polling
-
threadpool
A thread pool for running a number of jobs on a fixed set of worker threads
-
triomphe
A fork of std::sync::Arc with some extra functionality and without weak references (originally servo_arc)
-
loom
Permutation testing for concurrent code
-
blake2s_simd
a pure Rust BLAKE2s implementation with dynamic SIMD
-
thread-priority
managing threads priority and schedule policies
-
jobserver
GNU Make jobserver for Rust
-
scc
High-performance containers and utilities for concurrent and asynchronous programming
-
lasso
A multithreaded and single threaded string interner that allows strings to be cached with a minimal memory footprint, associating them with a unique key that can be used to retrieve them at any time
-
sync_wrapper
enlisting the compiler's help in proving the absence of concurrency
-
mpi
Message Passing Interface bindings for Rust
-
state
safe and effortless global and thread-local state management
-
sled
Lightweight high-performance pure-rust transactional embedded database
-
corosensei
A fast and safe implementation of stackful coroutines
-
rtrb
A realtime-safe single-producer single-consumer ring buffer
-
lockfree-object-pool
A thread-safe object pool collection with automatic return and attach/detach semantics
-
thingbuf
I'm at the buffer pool. I'm at the MPSC channel. I'm at the combination MPSC channel and buffer pool.
-
stateright
A model checker for implementing distributed systems
-
archery
Abstract over the atomicity of reference-counting pointers
-
atomic_float
Floating point types which can be safely shared between threads
-
may
Rust Stackful Coroutine Library
-
throttle-server
Provide semaphores for distributed systems via an http interface
-
radium
Portable interfaces for maybe-atomic types
-
try-lock
A lightweight atomic lock
-
maitake-sync
No-std async synchronization primitives from Maitake
-
diatomic-waker
An async, lock-free synchronization primitive for task wakeup
-
atomic_refcell
Threadsafe RefCell
-
scheduled-thread-pool
A scheduled thread pool
-
ratelimit
ratelimiter that can be shared between threads
-
crossbeam-channel
Multi-producer multi-consumer channels for message passing
-
leaky-bucket
A token-based rate limiter based on the leaky bucket algorithm
-
jobslot
GNU make jobserver for Rust
-
wasm_thread
An std thread replacement for wasm32 target
-
bus
A lock-free, bounded, single-producer, multi-consumer, broadcast channel
-
atomic
Generic Atomic<T> wrapper type
-
triple_buffer
triple buffering, useful for sharing frequently updated data between threads
-
mpstthree
implementing Multiparty Session Types for 2 or more participants
-
futures-intrusive
Futures based on intrusive data structures - for std and no-std environments
-
async-condvar-fair
Condition variables for async Rust
-
executors
A collection of high-performance task executors
-
concurrent-map
a lock-free linearizable B+ tree
-
orx-concurrent-vec
A thread-safe, efficient and lock-free vector allowing concurrent grow, read and update operations
-
flurry
Rust port of Java's ConcurrentHashMap
-
rustc-rayon
work-stealing parallelism for Rust - fork for rustc
-
tachyonix
A very fast asynchronous, multi-producer, single-consumer bounded channel
-
disruptor
Low latency inter-thread communication via a ringbuffer (inspired by the LMAX Disruptor)
-
typedmap
A hash map (dash map). A type of value is defined by trait implemented on key type
-
waker-fn
Convert closures into wakers
-
seize
Fast, efficient, and predictable memory reclamation for concurrent data structures
-
resman
Runtime managed resource borrowing
-
shuttle
testing concurrent Rust code
-
yaque
disk-backed persistent queue for Rust
-
paralight
A lightweight parallelism library for indexed structures
-
inline-array
efficient immutable inlinable byte array
-
memo-map
implementing a synchronized map for memoization
-
automerge
A JSON-like data structure (a CRDT) that can be modified concurrently by different users, and merged again automatically
-
sdd
Scalable lock-free delayed memory reclaimer
-
cargo-steady-state
Code generator for steady_state projects based on a structured dot file
-
atomig
Generic, convenient and lock-free
std
atomics viaAtomic<T>
. Can be used with many primitive types (including floats) and with custom types. -
mco
Rust Coroutine Library like go
-
chili
low-overhead parallelization library
-
futures-channel
Channels for asynchronous communication using futures-rs
-
sea-streamer
🌊 The stream processing toolkit for Rust
-
workerpool
A thread pool for running a number of jobs on a fixed set of stateful worker threads
-
concurrent-queue
Concurrent multi-producer multi-consumer queue
-
fdup
find duplicate files recursively and in parallel
-
shred
Dispatches systems in parallel which need read access to some resources, and write access to others
-
parallel-sh
Execute commands in parallel
-
guardian
owned mutex guards for refcounted mutexes
-
messaging_thread_pool
aiding the creation of typed thread pool of objects that is communicated with via channels
-
graph
high-performant graph algorithms
-
idr-ebr
An efficient concurrent ID to object resolver
-
rusty_pool
Self growing / shrinking
ThreadPool
implementation based on crossbeam’s multi-producer multi-consumer channels that enables awaiting the result of a task and offers async support -
uid
creation of unique IDs
-
loole
A safe async/sync multi-producer, multi-consumer channel
-
television
The revolution will be televised
-
botcore
Production-grade asynchronous bot engine with enterprise observability features
-
runnel
the pluggable io stream. now support: stdio, string io, in memory pipe
-
rs-store
Redux Store for Rust
-
ringbuffer-spsc
A fast thread-safe single producer-single consumer ring buffer
-
fault-injection
fault injection, concurrency delay injection, and error source annotation
-
lockable
offers hash map, hash set and cache data structures where individual entries can be locked
-
samsa
Rust-native Kafka/Redpanda protocol and client implementation
-
atomic-time
AtomicDuration
,AtomicOptionDuration
,AtomicSystemTime
,AtomicOptionSystemTime
,AtomicInstant
andAtomicOptionInstant
for Rust -
gix-lock
A git-style lock-file implementation
-
kanal
The fast sync and async channel that Rust deserves
-
happylock
Free deadlock prevention
-
indicatif-log-bridge
Bridge the log crate and indicatif to stop log lines from mixing up with progress bars
-
pausable_clock
A source of time information that can be paused and resumed
-
nbio
Non-Blocking I/O
-
parking
Thread parking and unparking
-
session_log
session log library for Rust
-
mcslock
Mellor-Crummey and Scott contention-free lock for mutual exclusion, referred to as MCS lock
-
clashmap
Sharded hashmap suitable for fast concurrent access
-
append-only-vec
Append-only, concurrent vector
-
safe-lock
A lock struct with a
const fn
constructor and nounsafe
- ARCHIVED -
mutex
An abstraction over closure-based mutexes
-
async_nursery
Primitive for structured concurrency
-
arrayfire
high performance software library for parallel computing with an easy-to-use API. Its array based function set makes parallel programming simple. ArrayFire's multiple backends (CUDA…
-
rearch
Re-imagined approach to application design and architecture
-
recloser
A concurrent circuit breaker implemented with ring buffers
-
bindgen_cuda
Bindgen like interface to build cuda kernels to interact with within Rust
-
io-reactor
Concurrent I/O resource management using reactor pattern
-
speare
actor-like thin abstraction over tokio::task and flume channels
-
no_deadlocks
A Runtime Deadlock Debugger
-
trauma
Simplify and prettify HTTP downloads
-
gst-plugin-threadshare
GStreamer Threadshare Plugin
-
lasso2
A multithreaded and single threaded string interner that allows strings to be cached with a minimal memory footprint, associating them with a unique key that can be used to retrieve them at any time
-
paradis
Parallel processing with disjoint indices
-
st3
A very fast lock-free, bounded, work-stealing LIFO queue
-
rcu_cell
a lockless rcu cell implementation
-
rustix-futex-sync
Linux futex-based synchronization
-
roboplc
Framework for PLCs and real-time micro-services
-
rc_event_queue
VecDeque-like fast, unbounded, FIFO, concurent read-lock-free message queue
-
atomptr
A safe copy-on-write wrapper around
AtomicPtr
with some extra tricks -
pumps
Eager streams for Rust
-
qeztorncodegen
* The development of Torn's API v2 is still ongoing. * If selections remain unaltered, they will default to the API v1 version. * Unlike API v1, API v2 accepts both selections and IDs as path and query parameters…
-
callysto
Stream processing framework
-
sync_file
Files that can be read concurrently
-
atom
A safe abstraction around AtomicPtr
-
gabriel2
Indeed, an actor library based on Tokio, written in Rust
-
tonari-actor
A minimalist actor framework aiming for high performance and simplicity
-
signals_receipts
exfiltration of the receipt of POSIX signals
-
renoir
Reactive Network of Operators In Rust
-
orx-concurrent-iter
A thread-safe and ergonomic concurrent iterator trait and efficient lock-free implementations
-
patrolilo
Job scheduler with integrated NTFY notifications
-
pueue
A cli tool for managing long running shell commands
-
mutringbuf
lock-free SPSC ring buffer, with in-place mutability
-
crossbeam-utils
concurrent programming
-
aarc
Atomically updatable variants of Arc and Weak for lock-free concurrency
-
paraseq
A minimal-copy parser for FASTA and FASTQ files built for paired parallel processing
-
qutex
Synchronization mechanisms that rely on lock-free and other non-(thread)blocking techniques, such as Rust futures, to guarantee mutually exclusive or shared exclusive access to data
-
atom_box
A safe idiomatic Rust implementation of Atomic Box using hazard pointers
-
thingvellir
a concurrent, shared-nothing abstraction that manages an assembly of things
-
oqueue
Non-interleaving multithreaded output queue
-
minstant
A drop-in replacement for
std::time::Instant
that measures time with high performance and high accuracy powered by TSC -
orx-parallel
A performant and configurable parallel computing library for computations defined as compositions of iterator methods
-
protoflow-zeromq
Protoflow implements flow-based programming (FBP) for Rust using Protocol Buffers messages
-
p3-maybe-rayon
Feature-gated wrapper around rayon
-
leapfrog
A fast, lock-free concurrent hash map
-
yazi-scheduler
Yazi task scheduler
-
oxidd-manager-pointer
Pointer-based manager implementation for OxiDD
-
rtic-monotonics
that provides implementations of the Monotonic trait from rtic-time
-
sharded_mutex
No per-object memory overhead locks. Pseudo atomic ops for Copy/PartialEq types.
-
tokio-cadence
Tokio-based metric sinks for Cadence
-
myriam
Actor model implementation for local and remote actors
-
tasklet
An asynchronous task scheduling library
-
atomic_once_cell
Thread-safe and lock-free OnceCell and Lazy
-
concurrent_arena
u32 concurrent insertion/removal arena that returns ArenaArc
-
sovran-arc
Memory management swift-isms brought to Rust
-
steady_state
Framework for building long running low latency actor based services on Linux. Provides visual telemetry to watch data flows between actors. Uses Erlang style supervisors to defend…
-
readlock
A weird alternative to Arc<RwLock<T>>
-
batch-aint-one
I got 99 problems, but a batch ain't one
-
boxcar
A concurrent, append-only vector
-
picokafka
Kafka library for tarantool-module based on librdkafka
-
ballista-executor
Ballista Distributed Compute - Executor
-
atomic-arena
Generational arena that allows reserving keys from other threads
-
swap-buffer-queue
A buffering MPSC queue
-
tsuki-scheduler
light wight, composable and extensible scheduler for every runtime
-
actify
An intutive actor model with minimal boilerplate
-
pubsub-bus
Thread-safe one-to-many publish-subscribe event system. Simple and easy to use. It just works (hopefully).
-
async-local
For using thread locals within an async context and across await points
-
skedge
Ergonomic single-process job scheduling for Rust programs
-
fluxion
actor framework written in rust and designed for distributed systems
-
pandora-interpreter
A command-line tool to run pandora language
-
async-skipdb
An embedded, in-memory, zero-copy, atomicity, consistency, MVCC, almost lock-free and serializable snapshot isolation database engine
-
atomic-take
Atomically take a value out of a container once
-
rayon-cond
Experimental iterator wrapper that is conditionally parallel or serial
-
oneshot-uniffi
Patched version of oneshot specifically for the UniFFI project. This removes the
loom
target and dependency which helps with UniFFI’s downstream consumers -
cfavml
CF's Accelerated Vector Math Library providing SIMD optimzied routines for vector operations
-
choir
Task Orchestration Framework
-
mintex
minimal mutex
-
clap-clap
CLAP plugin runtime
-
pariter
Parallel iterator processing
-
nexus-acto-rs
Actors
-
atomic-shim
Atomic types for unsupported platforms
-
gettid
Helper to get an integer ID for the current thread
-
jod-thread
std::thread which joins on drop by default
-
potential
PubSub lib with sync and async API
-
rtsc
Real-time Synchronization Components
-
dispatch
Rust wrapper for Apple's Grand Central Dispatch
-
spinning_top
spinlock crate based on the abstractions provided by
lock_api
-
lever
Pillars for Transactional Systems and Data Grids
-
rcron
cron job scheduling for rust
-
portable_atomic_enum
An attribute to create an portable atomic wrapper around a C-style enum
-
may_actor
Actor library based on MAY
-
pi_arr
lock-free & auto-expansion array
-
reactivate
Thread Safe Reactive Data Structure. Made with ❤️ for 🦀
-
rw-cell
Write data to cell from anything place your application without copy, lock and reading in one place
-
elysees
A fork of triomphe, now with more pointer trickery
-
supply-chain-trust-example-crate-000025
More compact and efficient implementations of the standard synchronization primitives
-
liner_broker
Redis based message serverless broker
-
async-event
An efficient async condition variable for lock-free algorithms
-
rclite
small, fast, and memory-friendly reference counting compatible with Arc and Rc APIs
-
whisk
fast lockless async channels
-
atomic-wait
Cross-platform atomic wait and wake (aka futex) functionality
-
async_once
async once tool for lazy_static
-
desync
A hassle-free data type for asynchronous programming
-
tetanus
A custom utils library for some common unsafe operations
-
par
Session types, as an implementation of linear logic with MIX
-
rose_bloom
A concurrent growing element size linked list with stable pointers
-
utils-atomics
Various atomic utils
-
balter
A load/stress testing framework
-
arccstr
Thread-safe, reference-counted null-terminated immutable strings
-
omango
Concurrency collections
-
agave-thread-manager
Thread pool manager for agave
-
virtual-buffer
A cross-platform library for dealing with buffers backed by raw virtual memory
-
file-per-thread-logger
A logging implementation that writes logs in one file per thread
-
vec-belt
Multi-threaded bulk-append, single-threaded consume
Vec<T>
-
rush_expr_engine
The rules engine is based on the rete algorithm
-
watchable
RwLock-like type that is compatible with both multi-threaded and async code
-
tcp-echo-benchmark
A high-performance TCP echo server benchmark tool measuring throughput using concurrent async clients. Supports configurable payload size, connection count, and test duration.
-
hzrd
Shared mutability containers based on hazard pointers
-
concurrent-slotmap
A lock-free concurrent slotmap
-
amity
Concurrency algorithms
-
slog-atomic
Atomic run-time controllable drain for slog-rs
-
melodium
Dataflow-oriented language & tool, focusing on treatments applied on data, allowing high scalability and massive parallelization safely
-
semka
Semaphore implementation
-
resilient-rs
fault tolerance, including retry strategies, backoff mechanisms, and failure handling
-
simd-itertools
SIMD-accelerated alternatives for common operations like contains, max, find etc
-
atomic-maybe-uninit
Atomic operations on potentially uninitialized integers
-
creche
A replacement for std::process::Command and related types in the standard library. Runs single processes, and pipelines of processes, with configuration of file descriptors and environment for each child process.
-
threadbound
Make any value Sync but only available on its original thread
-
wdk-mutex
An idiomatic Rust mutex type for Windows kernel driver development
-
tatl
in-process alerting
-
sovran-state
state management for Rust
-
ptr_cell
Thread-safe cell based on atomic pointers
-
timeslice
periodic time slice scheduler
-
evtcall
Rust Event Driven Framework
-
amfiteatr_classic
some classic game theory problems to research on
-
rucron
Job Scheduling Crate
-
mea
A runtime-agnostic library providing essential synchronization primitives for asynchronous Rust programming
-
crossfire
channels for async and threads
-
node-replication
An operation-log based approach that transform single-threaded data structures into concurrent, replicated structures
-
idgenerator-thin
Shorter ID and faster generation with a new snowflake drift algorithm. The core is to shorten the ID length, but also can have a very high instantaneous concurrent processing capacity (50W/0…
-
command_history
managing command history in Rust applications
-
fastatomstruct
A Python package for the analysis of atomic structures and dynamics
-
lockfree
concurrent data structures and a solution to the ABA problem as an alternative of hazard pointers
-
someday
Lock-free MVCC primitive
-
sharded-offset-map
A map from u64 to T that can be written from multiple threads
-
irondash_run_loop
Consistent, platform-independent interface to system run loop
-
laika
A namespace crate containing miscellaneous submodules (like an SPMC channel) of owner its-laika
-
svix-ksuid
A pure Rust and fully tested KSUID implementation
-
every
Run a command every N seconds
-
paladin-core
distributed algorithm toolkit. Write distributed algorithms without the complexities of distributed systems programming.
-
electrologica
High performance concurrent primitives for Rust
-
spools
Content scraping library for Instagram's Threads
-
skedgy
asynchronous job scheduler
-
anchor-chain
A statically typed async framework for building LLM-based applications
-
channel
Rust advanced queue library
-
tlrepo
Thread-local git2::Repository, shareable across threads
-
rusturnate
A sync or async mutex, with or without timeouts
-
blazemap
Implements a vector-based slab-like map with an interface similar to that of HashMap, and also provides tools for generating lightweight identifiers that can be type-safely used as keys for this map
-
txn_lock
support transactional versioning
-
maybe-rayon
Either acts as rayon or creates a single-threaded facade
-
local-sync
Non-threadsafe data structure for async usage
-
reord
Run your tests multi-threaded, but in a reproducible way
-
disruptor-rs
A high-performance ring buffer implementation of the LMAX Disruptor pattern
-
iterator_ilp
Iterator extensions for instruction-parallel reductions
-
td_rthreadpool
thread wrapper for Rust
-
cutools
-
atomic_enum
An attribute to create an atomic wrapper around a C-style enum
-
rsvow
A Rust-like implementation of JavaScript's Promise mechanism
-
atomic-file-install
For atomically installing a file or a symlink
-
lock_api
Wrappers to create fully-featured Mutex and RwLock types. Compatible with no_std.
-
magnetic
Low-latency lock-free queues
-
parallel-processor
Framework to manage asynchronous execution of multiple compute units communicating using messages
-
atomic-destructor
Atomic destructor for multi-threaded env
-
mpsc
mpsc channel
-
lock-free-static
Lock-free static variables
-
tracing-mutex
Ensure deadlock-free mutexes by allocating in order, or else
-
active_standby
A concurrency primitive for high concurrency reads
-
async-stm
Asynchronous Software Transactional Memory
-
eventbus-tiny
A small, dependency-free crate that provides a multi-producer broadcast-consumer event bus
-
diskann-rs
DiskANN (Disk-based Approximate Nearest Neighbor search) featuring a 3-layer index architecture and parallel query processing. This project provides an efficient and scalable solution…
-
kube-leader-election
Leader election implementations for Kubernetes workloads
-
lazy_mut
Alternative to LazyLock<Mutex<T>>
-
ebr
epoch-based reclamation with low cacheline ping-pong
-
fast-able
The world's martial arts are fast and unbreakable; 天下武功 唯快不破
-
amadeus
Harmonious distributed data processing & analysis in Rust. parquet postgres aws s3 cloudfront elb json csv logs hadoop hdfs arrow common crawl
-
treiber_stack
A lockless, thread-safe, atomic linked-list
-
shipyard_scenegraph
Scenegraph for Entity Component System
-
mpsc_requests
mpsc channels but with a response
-
mpvipc
A small library which provides bindings to control existing mpv instances through sockets
-
sharded-vec-writer
Write parts of a Vec from different threads
-
win-kernel
windows-kernel
-
armc
that facilitates Mutex access to variables
-
benjamin_batchly
Low latency batching tool. Bundle lots of single concurrent operations into sequential batches of work.
-
gadget-std
Re-exports of core/std for Tangle Blueprints
-
split_channel
stream-of-messages abstraction with split send/recv channels
-
async-atomic
Atomics which can be subscribed to and asynchronously notify when updated
-
lock-hierarchy
Prevent dead locks by enforcing lock hierarchies
-
rust-lockless-slotmap
A (mostly) lockless slotmap implementation in Rust
-
atomic_pincell
Threadsafe pinnable RefCell
-
invocation-counter
Datastructure to answer to: how many times a function has been called in the last X minutes?
-
antidote
Poison-free versions of the standard library Mutex and RwLock types
-
ohos-sys
Bindings to the native API of OpenHarmony OS
-
onering
High throughput synchronous queue
-
crossbeam-skiplist-mvcc
Support MVCC (Multiple Version Concurrent Control) for
crossbeam-skiplist
-
sharded-thread
Expirement for now
-
buf-mutex
Buffered mutexes
-
tc-transact
Traits and locking utilities for a TinyChain transaction
-
atomic-interval
A tiny implementation of an atomic timer
-
hydra-dashmap
A fork of dashmap for the hydra framework
-
congestion-limiter
Dynamic congestion-based concurrency limits for controlling backpressure
-
cachemap2
A concurrent insert-only hashmap for caching values
-
init-once
Concurrent, non-blocking lazy initialization of values
-
rearch-effects
Re-imagined approach to application design and architecture
-
mpmc-async
A multi-producer, multi-consumer async channel with reservations
-
lock_ext
Extensions to std::sync::Mutex
-
bastion
Fault-tolerant Runtime for Rust applications
-
easy-threadpool
A relatively simple thread pool which you can send jobs to
-
rayon-progress-bar
work-stealing parallelism for Rust
-
lfchring
Concurrent, lock-free implementation of a consistent hashing ring data structure, supporting virtual nodes and keeping track of replication
-
thread_io
performing I/O in background thread
-
restd
A re-implementation of various std features
-
pi_atom
The global thread safe atomic string pool reduces the memory occupation of the same string and is also used for HashMap keys
-
thread_local_collect
Supports the collection and aggregation of thread-local data across threads
-
rufutex
Ulrich Drepper's mutex using futex implementation in Rust
-
ferris-files
A CLI to find large files
-
nexus-actor-remote-rs
Remote library for Nexus Actor
-
k-lock
A fast mutex for short critical sections
-
ctxs
显式的代码上下文管理设施
-
throttle-client
Client for Throttle. Throttle is an http semaphore service, providing semaphores for distributed systems.
-
oxidd-rules-mtbdd
Multi-terminal decision diagrams (MTBDDs) for OxiDD
-
cyclic_pipe
providing fixed-size, buffer pre-allocated cyclic pipe which support multi-producer and multi-consumer concurrent access
-
sluice
Efficient ring buffer for byte buffers, FIFO queues, and SPSC channels
-
chunklist
A Chunk List is a new, concurrent, chunk-based data structure that is easily modifiable and allows for fast runtime operations
-
critical-once-cell
Thread-safe OnceCell and Lazy backed by critical section
-
clhlock
Craig and, indenpendently, Magnussen, Landin, and Hagersten queue lock for mutual exclusion, referred to as CLH lock
-
open-coroutine-hook
The syscall hook for open-coroutine
-
namaste
-
kueue
A robust, user-level, work-stealing, distributed task scheduler
-
thread-groups
that spawns several threads so you can wait for their completion and enjoy the silence of your life in the real world
-
keepcalm
shared types for multi-threaded programs
-
with_daemon
An async client-daemon abstraction framework
-
atomicbox
Safe atomic pointers to boxed data
-
send_cells
Safe and unsafe cells implementing Send/Sync
-
blocking-threadpool
A thread pool for running a number of jobs on a fixed set of worker threads
-
papaya
A fast and ergonomic concurrent hash-table for read-heavy workloads
-
simple-semaphore
🔐 A lightweight implementation of a Semaphore in Rust
-
batch-processing
A batch library for processing a list of items in parallel
-
bevy_gpu_compute
Empowering anyone to leverage GPU-acceleration with as little barrier-to-entry as possible
-
datacake-crdt
A conflict free replicated datatype based on a hybrid logical clock implementation for building eventually consistent data stores
-
pacwrap-agent
Executable agent for conducting containerized transactions
-
pawawwewism
a wewy sewious wibwawy fow stwuctuwed concuwwency, i pwomise :3
-
pyo3-utils
PyO3
-
redlock
distributed locking mechanism built on top of Redis
-
resilience-rs
Resilience patterns in Rust
-
pubserve
generic observer trait
-
bun-native-plugin
Rustified wrapper for writing native plugins for Bun
-
granite_reckoner
aggregator enabling basic statistical operations on Vec<T> in the specified number of threads. Works for all Rust's built-in numeric types.
-
freezebox
deref'able lazy-initialized container
-
operational-transform
Operational Transformation
-
smolscale2
hitdns fork of original smolscale
-
pi_share
rc, arc, lock, atomic
-
urcu2
Safe API to liburcu
-
que
A high performance channel with optional backpressure, interprocess capability, and a multiconsumer mode
-
par_slice
Slices that may be accessed from multiple threads with different evels of safety
-
bound
Wrap lock guards and other structs along with the locks or other data they are derived by shared reference from, in a struct you can pass around and store anywhere
-
synchronized
Convenient and simple macro for code synchronization in multithreading
-
sids
sample actor-model scheme providing abstraction over actor types and messages that can be sent across threads
-
permit
A struct for cancelling operations
-
synchronoise
Synchronization primitives that build upon the standard library
-
crossbeam-queue
Concurrent queues
-
per-thread-mutex
Synchronization lock designed for wrapping thread-unsafe C libraries
-
turbo-metrics
Toolkit to compute quality metrics fast using a GPU
-
global-channel
global channels
-
smart_channel
channel subscription system
-
ccutils
Collection of utils from the CylonCore project
-
thread_map
Types that are simple and easy-to-use alternatives to the
std::thread_local
macro -
bztree
BzTree implementation for Rust
-
kontroli
Type checking for the lambda-Pi calculus modulo rewriting
-
pinned-mutex
Mutex wrappers with structural pinning
-
egui_inbox
send messages to egui views from async functions, callbacks, etc. without having to use interior mutability.
-
mvsync
A standalone async and worker thread library, with expandable traits and command buffers
-
moga
A multi-objective genetic algorithm framework
-
bcast
Low latency broadcast (SPMC) buffer designed to work with shared memory
-
asc
Atomic Strong Count
-
parallel_operations
perform binary operations in parallel using threads
-
circ
Efficient referenced counted pointers for non-blocking concurrency
-
task_scheduler_rs
A Rust-based scheduler with basic functionality, focused on adding tasks and handling actions like execute, pause, and shutdown using channels for task communication
-
stm
Software transactional memory. Allows composable atomic operations.
-
snowdon
A lightweight thread-safe snowflake ID implementation for Rust
-
atomx
Thread safe data structures based on atomic data types
-
multithreading
in Rust
-
atomicell
Multi-threaded RefCell on atomics
-
seqlock
A reader-writer lock that provides extremely fast read access without starving writers
-
protoflow
implements flow-based programming (FBP) for Rust using Protocol Buffers messages
-
commonware-resolver
Resolve data identified by a fixed-length key
-
folklore
A lock-free concurrent hash map
-
may_queue
May's internal queue library
-
incr
fast and self-contained data structures for checking whether a new value is greater than the previous maximum
-
fibers
execute a number of lightweight asynchronous tasks (a.k.a, fibers) based on futures and mio
-
hipthread
no-std thread library based on pthread
-
affinitypool
running blocking jobs on a dedicated thread pool with CPU core affinity
-
slacktor
extremely fast, bare-bones, low-overhead, supervisorless, no-std actor library
-
atomiq
Convenient tool for atomics in Rust
-
cbloom
Concurrent implementation of Bloom filters
-
rayon-cancel
An adapter to interrupt rayon parallel iterators
-
task_pool
Flexible abstraction for task-based composable multithreading
-
may_waiter
coroutine communication blocker
-
nolock
A collection of Lock-Free Datastructures
-
task_simple
Execute functions in the background, both on desktop and web
-
logical-expressions
working with logical expressions
-
rsevents
Manual and auto reset events for signaling threads and writing new synchronization primitives like semaphores
-
mutex_trait2
Generic mutex trait
-
session_types
session types in Rust
-
sharded_queue
ShardedQueue is currently the fastest concurrent collection which can be used under highest concurrency and load
-
sinner
Easy cross-thread resource sharing for Rust!
-
orx-concurrent-bag
An efficient, convenient and lightweight grow-only concurrent data structure allowing high performance concurrent collection
-
aranya-afc-util
using Aranya Fast Channels
-
halt
functionality for pausing, stopping, and resuming iterators, readers, and writers
-
relaxed
Wrappers around Atomics that always use
Ordering::Relaxed
-
ump
Micro message passing library for threads/tasks communication
-
sync-cell-slice
Cells and slices that are accessible from multiple threads
-
parcheck
Test permutations of concurrent scenarios
-
print_queues
A print queues that can be add from different thread and print on main thread
-
spring-stream
Integrate sea-streamer with spring-rs
-
caos
Concurrent Append Only Segment-list
-
stuck
Multi-threading scheduled task facility building on cooperative stackful coroutine
-
xenevtchn
Rust bindings for Xen event channel API
-
deferred-reference
A deferred reference is not an actual reference, it is merely a smart pointer tied to the lifetime of the location it points to
-
spmc
channel
-
snowflake-rs-impl
Twitter's Snowflake ID generation algorithm
-
direct_ring_buffer
A high-performance, lock-free ring buffer for single-producer, single-consumer scenarios
-
par-iter-sync
Parallel Iterator With Sequential Output
-
cuneiform-fields
Field level [no_std] cache optimizations for Rust
-
interaction-calculus
A parallel model of computation
-
oxidater
A reusable LMAX Disruptor Implementation in Rust
-
dynamodb_lock
Distributed lock backed by Dynamodb
-
sea-streamer-socket
🌊 SeaStreamer backend-agnostic Socket API
-
EMCompute
fast , simple and cross-platform parallel computing library
-
flashmap
A lock-free eventually consistent concurrent hash map
-
e2k
英単語から読みを推論するライブラリ(Patchethium/e2kのRust実装)
-
parseq
Parallel sequential iterator
-
evident
Pub/Sub library using IDs to identify events
-
zallocator
Amortizes the cost of small allocations by allocating memory in bigger chunks
-
packed-atomic
get any time access to atomic values
-
conquer-once
Synchronization primitives for lazy and one-time initialization
-
rtic-monotonic
Core abstractions of the Real-Time Interrupt-driven Concurrency Monotonic timers
-
rush_core
The rules engine is based on the rete algorithm
-
openshmem-rs
Wrappers for the OpenSHMEM API
-
miyabi_scheduler
Thread pool scheduler with extra specific abilities
-
re_capabilities
Capability tokens for the Rerun code base
-
ringbuf-blocking
Blocking version of ringbuf
-
stronghold-stm
Software transactional memory
-
non_blocking_mutex
NonBlockingMutex is currently the fastest way to do expensive calculations under lock, or do cheap calculations under lock when concurrency/load/contention is very high
-
sigq
Queue that signals waiting consumers about node availability
-
rust_kits
kits
-
wiring
An async binary serialization framework with channels support
-
conquerer
DAG analyzer for orchestrating concurrent code
-
single_value_channel
Concurrent single-value update and receive channel
-
rusty_junctions
Join Pattern implementation in Rust
-
crb-parallel
CRB | Composable Runtime Blocks | Parallel
-
thread-manager
A streamlined Rust library for efficient thread pooling and parallel job execution, designed for simplicity, flexibility, and performance
-
tc-scalar
TinyChain's scalar value enum, including concurrently-resolvable op definitions and references
-
pikav
that help you send event to client with topic subscription
-
tokio-cron
cron scheduler for tokio
-
blaze-rs
A Rustified OpenCL Experience
-
bicoro
Bidirectional co-routine data structures
-
lock_free_hashtable
Lock-free (almost) insertion only hashtable
-
moro
Experimental structured concurrency support for async Rust (similar to trio's nurseries)
-
goko
A lock-free, eventually consistent, concurrent covertree
-
blackhole
...to throw your threads into
-
hopper
an unbounded mpsc with bounded memory
-
con-art-rust
ART-OLC concurrent adaptive radix tree
-
aligned-task-scheduler
A scheduler that runs tasks at exact minute intervals with an optional offset, ensuring tasks are aligned to precise time boundaries
-
nexus-actor-utils-rs
Nexus Actor
-
topograph
A miniscule thread pool and toposort scheduler
-
tokio-prometheus-metered-channel
Metered tokio channels with Prometheus metrics integration
-
simple-left-right
Lockfree, realtime safe and copy-free Synchronisation
-
hala-lockfree
Some lockfree structure for rust
-
mongo-lock-async
Distributed mutex locks with MongoDB
-
crossbeam-skiplist-fd
A long-term maintained forked version of the crossbeam-skiplist for supporting more flexible key comparison customization
-
omp
Rust SDK for developing open.mp gamemodes
-
local_thread
A local thread management library for Rust. No more 'static functions in order to start threads!
-
pulse
async wake signals
-
cuid1
CUID protocol in rust
-
lock_tree
Prevent deadlocks at compile time. A standalone republication of the netstack3 lock-ordering crate, part of Google's Fuchsia OS.
-
real-time
Safely share data with a real-time thread
-
pargraph
Operator based parallel graph processing
-
yaambo
concurrent skip lists
-
multipool
A configurable thread pool with optional work-stealing support and task priority scheduling
-
crius
hystrix-like circuit breaker
-
acto
light-weight Actor library for Rust
-
tokio-condvar
A Condition Variable for Tokio Applications
-
atomic-waitgroup
A waitgroup implementation supports async with advanced features
-
revision-lock
keeping track of changes to revisioned items
-
dag-scheduler
a scheduler of dag computation graph
-
windows-key-listener
Listen to arbitrary key chords on Windows
-
vlock
A fast and scalable multi-version shared state lock with wait-free read access
-
syncthreads
Safe thread synchronization
-
crosstalk
An extremely lightweight, topic-based, cross-thread, in-memory communication library
-
either-slot
An atomic slot whose senders can either place their value into the slot, or retrive all the data from the slot
-
easy-rs
reading and processing EEG and accelerometer data from .easy files
-
re_smart_channel
A channel that keeps track of latency and queue length
-
mtlog
Multi-threaded logger with support for log files
-
threadpool-executor
A threadpool executor
-
spinout
A thread-safe clonable and mutable smart-pointer akin to
Arc<Mutex<T>>
, using spin-lock instead of system futex -
watch
A synchronous message passing channel that only retains the most recent value
-
concurrent_lru
A concurrent LRU cache
-
rcu_list
a lockless concurrent list implementation
-
fast-logger
Fast logger for Rust
-
sentinel-core
The flow sentinel of your microservices
-
mogul
Agnosticly helps to manage concurrent versions of things
-
signals2
A thread-safe signal/slot library inspired by boost::signals2
-
spry
Resilient, self-healing async process hierarchies in the style of Erlang/OTP
-
ring-channel
Bounded MPMC channel abstraction on top of a ring buffer
-
leaklist
concurrent, lock-free, singly-linked list
-
par-dfs
Parallel, serial, and async dfs and bfs traversal
-
context
Cooperative multitasking for Rust using Boost.Context
-
nblock
Non-Blocking Runtime
-
employees
A small runtime that hides all the boilerplate when using threads
-
cache-padded
Prevent false sharing by padding and aligning to the length of a cache line
-
workpool
Distribute work to a set of threads and wait for completion
-
atomicring
AtomicRingBuffer is a constant-size almost lock-free concurrent ring buffer
-
sparking-lot-core
parking on addresses
-
adaptive-barrier
Barrier with adaptable number of thread subsciptions
-
renege
Tracking cache validity using fast concurrent invalidation propogation
-
mwcas
Multi-word CAS primitive
-
arc-cell
Helper for a simple Cell-like object containing Arc/Weak
-
rayon-wasm
work-stealing parallelism for Rust
-
latches
A downward counter (CountDownLatch) which can be used to synchronize threads or coordinate tasks
-
stdworld
signal-safe std replacement
-
simpl_actor
tokio actors
-
readlock-tokio
A weird alternative to Arc<RwLock<T>>, using tokio's RwLock
-
television-utils
The revolution will be televised
-
asparit
Async Parallel Iterators for Rust
-
usync
fast, drop-in, synchronization primitives
-
ora
Part of the Ora scheduler framework
-
dpc-pariter
Parallel iterator processing
-
readfish-tools
Tools for analysing adaptive sampling data
-
tagged-rendezvous
Rendezvous hashing with support for tag-based exclusions
-
boomerang
Deterministic Middleware for Robotics
-
lockmap
A high-performance, thread-safe HashMap implementation for Rust that provides fine-grained locking at the key level
-
commonware-runtime
Execute asynchronous tasks with a configurable scheduler
-
unlock
Instrumented synchronization primitives helping you to unlock performance issues
-
mt-debug-counters
support high performance debug counters for heavy multithreaded applications
-
flowync
multithreading a/synchronization
-
sync_2
A little crate providing a Rust implemented Mutex and RwLock
-
rayon-scan
A parallel prefix scan function for ParallelIterator
-
talos_messenger_actions
Messenger actions for Talos
-
deque
A (mostly) lock-free concurrent work-stealing deque
-
chute
Lockfree mpmc/spmc broadcast queue
-
crossbeam-deque
Concurrent work-stealing deque
-
omango-futex
Futex for Rust
-
disrustor
This project is a port of the LMAX Disruptor to Rust
-
db
Lightweight high-performance pure-rust transactional embedded database
-
sqrtx
Square root calculation
-
geph-nat
concurrent NAT thingy used throughout Geph
-
ppl
A structured parallel programming library for Rust
-
rly
Run shell commands concurrently with ease. Currently only a CLI tool.
-
yaks
Minimalistic framework for automatic multithreading of hecs via rayon
-
threadalone
Make any value Send + Sync but only available on its original thread. Don't use on multi-threaded environments!
-
cooptex
Deadlock free Mutexes
-
mcl_sched
installable wrapper for the MCL (Minos Compute Library) Scheduler 'mcl_sched'
-
asyncgit
allow using git2 in a asynchronous context
-
stakker_log
Logging support for Stakker
-
mq
Message Queue
-
ns3-parallel
A Multitask Parallel Concurrent Executor for ns-3 (network simulator)
-
umpx
Collection of ump extensions
-
norpc
Framework for in-process microservices
-
left-right
A concurrency primitive for high concurrency reads over a single-writer data structure
-
xloc
A fast, multi-threaded line counting utility written in Rust
-
env-lock
Set and lock environment variables for tests
-
backdrop_arc
Arc which will drop its large or complex contents in the background with Backdrop! (later, on another thread, or both! Fully customizable! Tokio supported!)
-
mu_uefi_tpl_mutex
Task Priority Level (TPL) mutual exclusion support
-
mongo_sync
instant coding answers via the command line(just like howdoi)
-
fork-map
running operations in a child process spawned by
fork()
-
kapot-executor
kapot Distributed Compute - Executor
-
tlid
Thread Local ID generator by predefined range without atomics/locks/random/time
-
ordered-parallel-iterator
Performs tasks in parallel returning completed tasks in order of appearance
-
ocl-interop
Creates an OpenCL Context with OpenGL Interop enabled
-
arcu
An Rcu implementation using an Arc to keep the read critical section short and handle cleanup
-
gpgpu
WIP GPGPU framework built on top of wgpu
-
command-executor
Command Executor thread pool
-
zkstate
Share a struct across multiple instances of an application using zookeeper
-
shared-expiry-get
concurrent async get with expiration for Rust
-
async-fifo
MPMC & oneshot channels with (a)sync API
-
big_data
Safe Rust code for creating Erlang NIF to store big data
-
async-datachannel
Async Wrapper for datachannel
-
swimming
Dive into Efficiency with Swimming: A High-Performance, No-Nonsense Connection Pool
-
limnus-default-schedulers
default schedulers for limnus. Main, Fixed and Render
-
vin
An ergonomic actor framework
-
crusty
Fast && scalable Broad Web Crawler developed on top of crusty-core
-
vigil
liveness checking watchdog for detecting deadlocks/livelocks/starvation etc
-
godwit-daemon
A daemon runner for GodWit
-
protex
(Process Mutex) concurrency in process level
-
lock_freedom
concurrent data structures and a solution to the ABA problem as an alternative of hazard pointers
-
parsli
Parallel status lines for Rust
-
arrayfire_fork
ArrayFire is a high performance software library for parallel computing with an easy-to-use API. Its array based function set makes parallel programming simple. ArrayFire's multiple backends (CUDA…
-
carpet
A thread-safe, fully-parallel directed graph
-
thread-counter
way of efficiently keeping track of active threads and waiting for them to exit
-
oncemutex
A mutex providing one-time synchronized access, then safe unsynchronized access
-
round_mult
A tiny library to round a number up or down to a multiplier
-
fast-counter
A sharded concurrent counter
-
asar-snes
Rust bindings for Asar (https://github.com/RPGHacker/asar)
-
hey_listen
An event-dispatcher-collection offering async, sync, parallel, and prioritised solutions!
-
melodium-engine
Mélodium core engine and executor implementation
-
sprinter
Run parallel queued tasks
-
with_lock
Deadlock freedom
-
pcat
A dead-lock free parallel cat implementation
-
tokio-etcd-lock
WIP
-
skipchannel
skipchannels allow to communicate between threads, but always skip to the last sent value
-
sea-streamer-redis
🌊 SeaStreamer Redis Backend
-
putex
process mutex
-
clustr
Multithreaded string clustering
-
interval-task
Repeatedly execute a
Task
with fixed time delay. more thansetInterval
-
atomic-counter
Atomic (thread-safe) counters for Rust
-
ballista-scheduler
Ballista Distributed Compute - Scheduler
-
atomiclock
A non-blocking lock that can be used in async contexts
-
seda_bus
A Staged Event-Driven Architectural message bus
-
nysa
A bus for passing messages around between independent subsystems of an application
-
dager
create and execute a graph of nodes
-
currant
spawn concurrent shell processes in rust
-
read-write-store
A concurrent, unordered collection for Rust, where each element has an internally generated ID and a read-write lock
-
tcb
A middleware service for delivering messages in a causal order
-
wasm_sync
Synchronization primitives for both web and native
-
hyaline-smr
Garbage Collector(Hyaline- Safe Memory Reclaimation) for lock free data structures
-
rtic-syntax
The Real-Time Interrupt-driven Concurrency (RTIC) meta language
-
ductile
A channel implementation that allows both local in-memory channels and remote TCP-based channels with the same interface
-
seckoo
A concurrent Cuckoo Hash Table
-
rustodrive
Rust bindings for controlling multiple ODrives with the CAN protocol
-
dropout
Drop your objects out of main thread
-
cond_sync
Hides the boilerplate code needed with std::sync::Condvar
-
oxidator
A reusable LMAX Disruptor Implementation in Rust
-
pime
Rust Python Integration Made Easy
-
wrrm
Write-rarely-read-many wrapper
-
idle
Collection of idle strategies to be used by thread(s) when they have no work to perform
-
lockless
Composable, lock-free, allocation-light data structures
-
threadstack
A more ergonomic and more flexible form of thread local storage
-
coarsetime
Time and duration crate optimized for speed
-
semrs
A pure rust implementation of semaphores
-
unknownrori-simple-thread-pool
A lighweight thread pool for networking and other stuff
-
mqb
Lock free in memory message queue broker
-
periodically
running tasks on a schedule
-
ump-ng-server
Server message dispatch loop for ump-ng
-
left-right-cell
A cell with lock-free concurrent read access
-
pinboard
A lock-free, threadsafe way to publish data, just stick it on the pinboard
-
hyperbridge
Fast multi-producer multi-consumer channel with async support
-
cortexm-threads
context-switching on ARM Cortex-M ( 0, 0+, 3, 4, 4F ) micro-processors
-
wakerset
no_std, no_alloc storage of Wakers embedded in the Future type
-
surrealkv
A low-level, versioned, embedded, ACID-compliant, key-value database for Rust
-
hytra
Datastructure for fast multi-threaded updates
-
diplomatic-bag
A wrapper type that allows you to send
!Send
types to different threads -
persistent-scheduler
high-performance task scheduling system developed in Rust using Tokio. This system supports task persistence, repeatable tasks, Cron-based scheduling, and one-time tasks, ensuring reliability…
-
hammer-cli
Hammer is a no-config cli tool for running concurrent tasks with monorepo support
-
uf_rush
A lock-free, thread-safe implementation of the Union-Find (Disjoint-Set) data structure
-
async-pipes
building concurrent data processing pipelines
-
tari_shutdown
A convenient shutdown signal
-
evlru
An eventually consistent LRU designed for lock-free concurrent reads
-
supermon
A set of utilities for coordinating watchers, middleware, and consumers via channels
-
ctx-thread
Cooperative, scoped threads based on crossbeam and golang’s context package
-
evmap
A lock-free, eventually consistent, concurrent multi-value map
-
mpi-fork-fnsp
Message Passing Interface bindings for Rust (FORK)
-
squeue
sized queue
-
rusty-jokes
A humorous Rust crate that brings joy and entertainment to Rust programmers with features like Laughable Lifetimes, Comedic Concurrency, and Punchline Pointers
-
async_ach-notify
Async Atomic Channel
-
multithread
API for data-parallel tasks, rayon-lite
-
promise_out
promiseOut version for rust
-
rgraph
A task graph library
-
apalis-core
Core for apalis: simple, extensible multithreaded background processing for Rust
-
sync-unsafe-cell
A backport of the SyncUnsafeCell standard library type for use in older Rust versions
-
greenie
Green threads and coroutines in stable Rust
-
amfiteatr_proc_macro
Procedural macro crate for amfiteatr_* crates
-
downloader-rs
file downloader for rust
-
rs_lockfree
a lock-Free lib based on practical Hazard Pointers algorithm
-
swap-arc
A swappable Arc
-
irox-threading
Blocking and Asynchronous Threading Tools
-
cht
Lockfree resizeable concurrent hash table
-
lendpool
lock-free library for allowing safe and concurrent access to a group of objects
-
managed-thread
Real fearless concurrency! Spawn threads that will be automatically destroyed when no longer needed
-
batch-lock
A lock manager with batch-lock support
-
pipelines
constructing multi-threaded pipelines of execution
-
threadsafe_zmq
Threadsafe zeromq
-
concread
Concurrently Readable Data-Structures for Rust
-
dycovec
A dynamically-allocated, concurrent vector
-
entropy-ecs
一个虚拟世界
-
rtfm-syntax
The Real Time for The Masses (RTFM) meta language
-
native-timer
Timer library which uses OS timer capabilities
-
bursty
Test support for exarcebating contention in multi-threaded code
-
dci
DCI-Closed, a frequent closed itemset mining algorithm, implemented in Rust
-
jobsys
Lockless Work Stealing Job System
-
conquer-util
concurrent and lock-free programming
-
takecell
A cell type which value can only be taken once
-
thread-tree
A tree-structured thread pool for splitting jobs hierarchically on worker threads. The tree structure means that there is no contention between workers when delivering jobs
-
peril
Fast and safe Hazard pointers for Rust
-
orx-concurrent-option
ConcurrentOption is a lock-free concurrent read and write option type
-
concurrency-demo-benchmarks
A small utility to benchmark different approaches for building concurrent applications
-
priomutex
A mutex where waiting threads specify a priority
-
kademlia-dht
Kademlia DHT
-
locklessness
Composable, lock-free, allocation-light data structures
-
thfmr-protocol
Internal control protocol encoding and decoding library for the TouHou.FM Radio project
-
rusty-cron-scheduler
scheduler that executes function pointers following a cron string
-
conqueue
multi-producer, single-consumer queue (MPSC)
-
supply-chain-trust-example-crate-000051
Tools for concurrent programming
-
super_cell
A super (unsafe) cell that also implements send and sync regardless of the inner type's send/sync
-
refcapsule
Safely send references to other threads
-
ligmars
Safe bindings to the LGMP C library
-
rusty_chain
abstracts over functional processing units called
chain links
. Each link in the chain is meant to be independent, immutable, idempotent, and highly testable. -
io_partition
allowing to use just a part of a Read + Seek object
-
timedmap
A hash map with expiring key-value pairs
-
bi
-
rearch-tokio
Re-imagined approach to application design and architecture
-
rcu_128
RCU (Read-Copy-Update) implementation for platforms supporting atomic 128-bit operations
-
exclusion-set
a lock-free concurrent set
-
unirun
Universal project runner
-
proglog
Thread safe progress logging
-
zolegus
-
little_raft
The lightest distributed consensus library. Run your own replicated state machine!
-
maxwell-utils
Maxwell utils implementation for Rust
-
protoflow-syntax
Protoflow implements flow-based programming (FBP) for Rust using Protocol Buffers messages
-
progpool
Job pool with terminal progress bar
-
cron_tab
A cron job library for Rust
-
tyra
Typed Actor System
-
win-events
A poor attempt to implement WaitForMultipleObjects and the ManualReset, AutoReset and Pulse types
-
tourniquet-tonic
Async native round-robin manager for remote services. Tonic integration.
-
fan
Simplifies fanning-out (and eventually -in) with channels
-
parallel-iterator
Parallelize any iterator with ease!
-
persistent_stack
Concurrent persistent stack
-
channel-receiver
Channel Receiver
-
piper
Async pipes, channels, mutexes, and more
-
thread_timer
cancelable timer with no external dependencies
-
supply-chain-trust-example-crate-000089
Spin-based synchronization primitives
-
atomic-array
Defines several array types in which elements may be updated atomically. Intended to provide atomic array types similar to those found in java.util.concurrent.atomic in Java.
-
despero-hecs-schedule
shedulable systems and parallel execution for hecs
-
arcow
Atomically Reference-counted Copy-On-Write shared pointer
-
redbus
A high-performance global message bus for concurrent applications
-
mpmc
copy-pasted from old rust stdlib
-
stronghold-rlu
Read-Log-Update software transactional memory like synchronization mechanism
-
revenq
A concurrent, revision-based event queue implementation
-
kafka_json_processor_core
The core logic for your Kafka processor, part of kafka-json-processor project
-
crossbeam-skiplist
A concurrent skip list
-
grizzly_scheduler
A scheduler for running async tasks using cron expressions. It is built on top of tokio. Tasks can be parallel or sequential. Fuzzy random offset can be added to the cron expression.
-
refcell-lock-api
A single-threaded implementation of lock_api for RefCell, to alllow abstracting between single-threaded & multi-threaded code
-
maxim
Implements a highly-scalable and ergonomic actor system for Rust based on the best of Erlang / Elixir and Akka. A fork of the Axiom actor framework.
-
slb
Sharded load balancing text-streaming Unix tool
-
cogo
Rust Coroutine Library like go
-
libblobd-direct
blobd, direct variant
-
threadmap
WIP
-
bustle
Benchmarking harness for concurrent key-value collections
-
concurrent-initializer
concurrent initializer to ensure initialization only once per key
-
distribuidos_sync
Sync common utils using standard library
-
killswitch_std
A thread-safe kill switch using only the standard library
-
axka-rcu
A reference-counted read-copy-update (RCU) primitive used for protecting shared data
-
sync_splitter
Safely split a mutable slice in multiple threads at the same time
-
rust-debugging-locks
debugging locks in Rust
-
atomicbox_nostd
Fork of the atomicbox library that works in no_std contexts
-
shared-local-state
shared local state registry for use in EBR, IO, etc
-
peace-lock
A zero-cost abstraction lock that helps check contention free algorithms
-
spin_loop
-
testbench
Testing and benchmarking tools for concurrent Rust code
-
pcp-mutex
A Priority Ceiling Protocol (PCP) mutex, based on Linux PI futex. Allows efficient and deadlock free execution.
-
sea-streamer-file
🌊 SeaStreamer File Backend
-
aramid
Synthetic fibers
-
thinkofname/think_ecs
Source code of the game Univercity: https://store.steampowered.com/app/808160/UniverCity/
-
nemo
Session types for asynchronous networking
-
redsync
Redlock for distributed locks with Redis
-
priority
A thread/task priority type
-
yash-executor
single-threaded concurrent task executor
-
anylock
Polymorphic Locks
-
dfmutex
Deadlock-free Mutex locks
-
secc
Implements a Skip-Enabled Concurrent Channel (SECC) for Rust
-
fast-async-mutex
lib which provide asynchronous locking mechanisms (Mutex, RwLock, OrderedMutex and OrderedRwLock)
-
autoincrement
wrapper for different purposes
-
foco
Topic-based strongly typed pubsub for no_std rust
-
cpq
A Concurrent Priority Queue implemented in Safe Rust
-
lofi
Low Overhead Fibers
-
stop-thread
Various ways of stopping threads on various platforms, without requiring the thread to poll
-
is_main_thread
A simply tool to check if current thread is the main one
-
semaphore-key
control concurrent thread access by key using a shared semaphore
-
job_abstrs
Abstractions for event-driven jobs
-
base-threadpool
minimalistic threadpool implementation
-
ncd
Concurrency library
-
discord-termview
Spawn multiple concurrent unix terminals in Discord
-
dynamic_ocl
Dynamically-loaded OpenCL bindings
-
take-once
A thread-safe container for one-time storage and one-time consumption of a value
-
std-semaphore
A counting, blocking sempahore extracted from rust 1.7.0
-
grandma
A lock-free, eventually consistent, concurrent covertree
-
sleepfast
Sleep for very small amounts of time quickly
-
voxel-tiler-core
Convert point clouds to voxel data
-
ampsc
async multi-producer single-consumer channel
-
mbarc-map
Minimally-blocking, Atomic Reference Counted Map
-
scrummage
Fight over OS process prioritisation
-
cell-family
Cheap cells accessed through unique owners
-
swapper
Swap ownership between threads
-
threadling
Threads as traits
-
async-map-reduce
Fast map-reduce based on threading
-
fenic
test concurrent code
-
sesh
deadlock-free session-typed communication
-
ora-timer
Part of the Ora scheduler framework
-
tucan
fast, and multithreaded interner with loose type requirement
-
object-space
An object store library for highly concurrent program written in Rust
-
humthreads
Threads for humans
-
rust-releases-core
Base traits and definitions for rust-releases
-
simdvec
Vectors, but with the operational speedup of SIMD!
-
java-threadpool
这是一个跟java ThreadPoolExecutor线程池 使用方式基本相同的线程池
-
PRUEBA
Colas tarea
-
parallel_reader
reading from a file (or any
Read
stream) and processing it by chunks, in parallel -
ora-storage-fjall
Part of the Ora scheduler framework
-
killable_thread
A wrapper for thread that allows it to be easily stopped cooperatively
-
tc-tensor
TinyChain's Tensor collection type
-
stoppable_thread
A wrapper for thread that allows it to be easily stopped cooperatively
-
cnr
An operation-log based approach for data replication
-
locktree
Experimental compiler-checked deadlock-freedom
-
toktor
A small tokio-based Actor framework
-
runloop
Cancelable non-blocking polling threads (with optional timeouts)
-
mlsp
small library for smart pointers that use both thread local and global atomic counters
-
mtlog-progress
A progress bar implementation working gracefully with mtlog's logger
-
status_executor
Run your work on some context (thread) and get status info back
-
evolution
Efficiently evolve your old fixed-length data files into modern file formats
-
synqueue
Internally synchronized (MPMC) queue
-
sas
Salty-and-Sweet one-line Rust Runtime Performance Optimization Library
-
talaria
A high performance, cyclic message passing library
-
concurrent-round-robin
A concurrent wrr implementation for rust
-
supply-chain-trust-example-crate-000031
More compact and efficient implementations of the standard synchronization primitives
-
reactor_rs
reactor-rust is an implementation of the Reactive-Streams
-
piz
piz (a Parallel Implementation of Zip) is a ZIP archive reader designed to concurrently decompress files using a simple API
-
queuingtask
queueingtask is a library for running different threads in order in Rust
-
dekker
Dekker's algorithm for mutual exclusion
-
no-std-async
Async synchronization primitives for #[no_std] rust
-
shared_resources
shared resources container which is thread-safe, and lock-free
-
ulock-sys
Rust bindings for Darwin's (e.g. macOS, iOS, ...) not-entirely-public ulock API, which provides futex-like functionality.
-
navvy
MPSC Channel broker allowing channels of different types to be stored in a single data structure
-
run-them
A CLI to launch a single command with many workers, serializing the output
-
spinning
Mutexes and SIX locks implemented by spinning
-
async-sema
Async semaphore library
-
slottle
A throttle pool library designed for thread-based concurrency
-
gosh-remote
Distributed parallel computing over multiple nodes
-
sever
Coerce hardlinks into new files
-
inert
lets you use non-Sync values in a Sync way
-
statman
Stat Manager
-
infinitree
Embedded, encrypted database with tiered cache
-
efflux
Easy MapReduce and Hadoop Streaming interfaces in Rust
-
rayon_logs
Traces for the rayon work-stealing library
-
contrie
Concurrent map and set
-
specs-static
extension for Specs that adds custom ids
-
atomicdouble
128-bit atomics for generic type
-
dremoc-sync
Synchronization utilities
-
rtrb-basedrop
A fork of the
rtrb
crate that uses basedrop’s Shared pointer in place of Arc -
lending_thread_pool
A thread pool where workers can lend their data to their tasks
-
forkjoin
A work stealing fork-join parallelism library for Rust
-
governor
A rate-limiting implementation in Rust
-
mutex_logger
logger that usess mutex for thread safty
-
rt-history
An RT-safe history log with error checking
-
ev_slotmap
A lock-free, eventually consistent, concurrent slot map
-
kcas
A lock-free, allocation-free multi-word compare-and-swap library
-
grip-grab
A faster, more lightweight ripgrep alternative
-
simt
compute support for rust
-
shardize
proc macro that generates code to create a sharded form of an existing container
-
lockpool
offers a pool of locks where individual locks can be locked/unlocked by key
-
deqp-runner
A VK-GL-CTS/dEQP wrapper program to parallelize it across CPUs and report results against a baseline
-
hwlocality
Idiomatic Rust bindings for the hwloc hardware locality library
-
ringbuf-basedrop
A fork of the
ringbuf
crate that uses basedrop’s Shared pointer in place of Arc -
key-message-channel
Multi-producer single-consumer queue capable of queuing messages by message key
-
arrow-rayon
Use parallel iterators for Apache Arrow with rayon
-
thread-control
control threads' execution/status
-
mscheduler
Use mongodb to schedule task running
-
update_channel
A channel for single updatable values
-
portable-atomic-util
Synchronization primitives built with portable-atomic
-
ipmpsc
Inter-process Multiple Producer, Single Consumer Channels
-
sublock
Variants of RwLock/RefCell that support sublocks, opened for reading if the main
RwLock
is opened for reading, opened for writing if the mainRwLock
is opened for writing -
concurrent_prime_sieve
Tools for generating filters and collections with primes concurrently. Rust implementation of the Sieve of Atkin. This implementation runs in O( sqrt(max_num) + section_size ) (where section_size = max_num - min_num)…
-
waithandle
that makes signaling between threads a bit more ergonomic
-
fenris-paradis
Parallel processing of disjoint indices for the fenris library
-
range-lock
Range lock for std::vec::Vec
-
fragile
wrapper types for sending non-send values to other threads
-
nvrtc
Bindings for NVIDIA® CUDA™ NVRTC in Rust
-
hv-guarded-borrow
Traits and implementations for generic use of "guarded" borrows
-
maybe_parallel_iterator
Toggle parallelism with feature flags!
-
single_executor
Traits for concurrent primitives
-
base-coroutine
A fast and safe implementation of stackful coroutines with scheduler which supports preemptive scheduling
-
todc-utils
building and testing distributed systems
-
atomic-destroy
An value which can be atomically read and destroyed; like an atomic Option
-
async-cpupool
async threadpool for CPU-bound tasks
-
async-liveliness-monitor
A Liveliness Monitor for your Asynchronous Runtimes
-
bmrng
async MPSC request-response channel for Tokio
-
rutin_dashmap
Blazing fast concurrent HashMap for Rust
-
para
A dataflow/pipeline parallelization framework
-
atomic_prim_traits
Traits over primitive atomic types
-
amadeus-parquet
An Apache Parquet implementation in Rust
-
acteur
A safe actor-like framework that just works. Simple, robust, fast, documented.
-
ump-ng
Micro message passing library for threads/tasks communication
-
shared_channel
Multi-producer, multi-consumer FIFO queue communication primitives
-
crossbeam-skiplist-pr1132
A concurrent skip list
-
mp2c
A multi producer multi polling consumer library that enables multiple producers to send messages to multiple consumers completely asynchronously
-
rewrk
HTTP benchmarking tool
-
sanitizers
Interfaces and FFI bindings for the sanitizers interfaces
-
hala-sync
Hala synchronous primitive
-
go-spawn
that provides macros to spawn and join threads with minimal boilerplate
-
skippy-rs
A set of lock free, thread safe, and fast data structures implemented via a Skip List
-
mioco
Scalable, asynchronous IO coroutine-based handling (aka MIO COroutines)
-
swap_channel
A safe lock-free parallel communication channel based on mem::swap
-
schedwalk
Test futures under all possible polling schedules
-
file_locking
A lean file locking implementation for Unix and Windows
-
channel-sender
Channel Sender
-
navactor
A cli tool for creating and updating actors from piped input
-
arrows
An actor framework in rust with message durability and ingestion order processing of of messages
-
quick_cache
Lightweight and high performance concurrent cache
-
spin-sync
Synchronization primitives using spinlock. The interface resembles std::sync. The constructors of public structs are const; i.e. it is possible to declare static Mutex<T> as long as T can be build statically.
-
try-mutex
Fast non-blocking mutex
-
zkmq
Message Queue, backed by Zookeeper
-
flue
An efficient and secure actor runtime library
-
work-queue
A concurrent work-stealing queue for building schedulers
-
cpu-affinity
Cross-Platform CPU affinity
-
fused-reader
fused reader type that if writer thread dies while holding armed fuse the reader will get BrokenPipe error
-
spliter
way to implement Rayon's ParallelIterator
-
rayon-core
Core APIs for Rayon
-
sea-streamer-examples
🌊 The stream processing toolkit for Rust
-
atomicslice
thread-safe shared slices that are just about as fast as possible to read while also being writable
-
caring
Sharing is caring: a safe library for mmap'ing memory in multiple processes
-
protoflow-crossbeam
Protoflow implements flow-based programming (FBP) for Rust using Protocol Buffers messages
-
mth_calc
demonstrating Cargo. Contains helper method for running a process in parallel on all available processors.
-
barriers
A barrier spin lock implementation
-
rdispatcher
Dispatcher for Rust, broadcast and subscribe many to many
-
async-datachannel-wasm
Async Wrapper for WebRTC datachannel in the browser environment
-
shared_cell
Interior mutability between concurrent tasks on the same thread
-
or_poisoned
Unwrap std lock guards in a semantic way
-
lariv
Linked Atomic Random Insert Vector: a thread-safe, self-memory-managed vector with no guaranteed sequential insert
-
coro
Stackful, first-class asymmetric coroutines
-
water
thread-safe distributed message sending facility supporting synchronous and asynchronous I/O across process and machine boundaries. It also uses nets which allow message broadcasts to all…
-
threadgroup
Manage groups of threads as one unit, join the first one that finishes, timeout on join attempts
-
atomiclock_async
async lock
-
xrm
Cross Runtime Manager
-
spsc-ringbuf-core
Heapless ring buffer
-
classic-sync
ReentrantLock, Semaphore and CyclicBarrier using Classic Linux Mutex systems
-
one_at_a_time_please
For serialising calls to functions
-
simple-rw-global
GlobalContainer based on std::sync::RwLock
-
xio_jobset
XIO jobset datatypes
-
crossbeam-skiplist_piedb
A concurrent skip list
-
cupchan
async overwriting channel between two threads that is wait & block free by swapping cups around
-
android-wakelock
Safe and ergonomic Rust bindings to the Android WakeLock API
-
async-priority-channel
An async channel where pending messages are delivered in order of priority
-
ach
Atomic Channel
-
futures-dagtask
DAG-based Task Queue
-
nexus-actor-core-rs
Core library for Nexus Actor
-
lazy_id
A thread-safe lazily-initialized ID
-
snowflake-multi-threaded
The rust-lang implementation of Twitter's id generator algorithm snowflake, it thread safety | Twitter 的id生成器算法snowflake的rust-lang 实现
-
consume
Memory order consume for when it's known that the compiler can't elide the dependency
-
node-workers
A pool of long-lived nodejs workers
-
orx-concurrent-ordered-bag
An efficient, convenient and lightweight grow-only concurrent data structure allowing high performance and ordered concurrent collection
-
aide-de-camp
backend agnostic delayed job queue
-
flexible-locks
Flexible Locks
-
lockfree-ringbuffer
A lock-free ring buffer implementation in Rust
-
dynqueue
Dynamically extendable Rayon parallel iterator
-
rider
bounded executor for tokio; limit the count of tasks running 🚦
-
hv-lease-tracker
no-std compatible tracking of borrow origins, for providing better diagnostics when implementing interior mutability primitives
-
threadcell
A cell whose value can only be accessed by a owning thread
-
rtfm-core
Core abstractions of the Real Time For the Masses framework
-
channel_io
Reader implementation on channel of bytes
-
semanticsimilarity_rs
designed to compute similarity/distance metrics between embeddings
-
threatpool
thread pool
-
uchan
Multi-producer single-consumer channel for message passing
-
streambed-patterns
Patterns for working with streambed
-
thread_lake
A very high level thread pool manager
-
concurrency_traits
Traits for concurrent primitives
-
hv-elastic
Safe and almost-safe abstractions for lengthening lifetimes and
'static
“loaning” of non-'static
types -
libmcl-sys
This system crate provides Rust language bindings to the Minos Compute Library (MCL)
-
microlock
waiting: Small locks and other timing things!
-
sentinel-rocket
Sentinel middleware for Rocket
-
essential-lock
A minimal crate containing Essential's locking method that is safe to use in async code
-
witty-actors
Fork of quickwit-actors, Actor framework used in quickwit
-
atomic-try-update
Primitives that make it easy to implement correct lock-free algorithms
-
onetime
(aka. oneshot) async spsc channel
-
blinkcast
Fast, bounded, multiple-producer, multiple-consumer, lossy, broadcast channel
-
rayon_iter_concurrent_limit
Limit the concurrency of an individual rayon parallel iterator method with a convenient macro
-
structured_persistent_logger
A structured 'log' logger that allows for persistent fields
-
async-events
Waiting for external task completion in asynchronous Rust code
-
slog-json-concur
JSON drain for slog-rs with concurrency
-
tokio-bichannel
Bidirectional tokio::sync::mpsc channel
-
queue-ext
The extended feature of the queue can convert the pop() function of the queue to Stream and the push() function to Sender
-
rayoff
rayon but it's map-reduce
-
lock_pool
Robust, efficient, high performance, asynchronous object pooling
-
highroller
high-level rolling index that is thread-safe and guarantees cheap runtime-unique IDs
-
cloudi
API
-
gemino
A multi producer multi consumer (MPMC) broadcasting channel
-
hadron-client
The Hadron Rust client library
-
datacake
A batteries included framework for building fault-tolerance distributed data systems
-
try-rwlock
Fast non-blocking readers-writer lock
-
glock
Granular locking crate for Rust
-
chashmap-async
Concurrent async hash maps with key-scoped locking
-
atomic-borrow
atomic reference counter
-
linux-rtic
A Real-Time Interrupt-driven Concurrency (RTIC) implementation for Linux
-
sync-extra
Convenience functions to Mutex and RwLock
-
dashmap_with_out_t_map_trait
Blazing fast concurrent HashMap for Rust
-
paradis-demo
demo functionality for paradis, not intended for use
-
rcurs
An oxidized RCU implementation
-
spawns-executor
Async executors for thread context task spawner
-
mrogalski-looper
Clean abstraction for a single-threaded event loop. Built as a lightweight wrapper around the std::sync::mpsc package.
-
ordered-channel
A channel that always receives messages in the correct order, even if they were sent out of order
-
provenant
A version of Arc that can free memory while weak pointers exist by probabilistically tracking provenace
-
steelmill
A resource manager (dependency injector / factory) designed for distributed systems and simulation testing
-
rapidsync
Rapid & threadsafe embedded data stores
-
gaffer
Prioritised, parallel job scheduler with concurrent exclusion, job merging, recurring jobs and load limiting for lower priorities
-
bufchan
buffered MPSC channel
-
ump-ngx
Collection of ump-ng extensions
-
atomic_sibling_counter
A shared counter that allows parallel threads/tasks to check how many siblings they have. The counter is atomic and threads/tasks are not synchronized or coupled in any way.
-
atomic-story
An brief overview of atomics and memory ordering on a multi-threaded context with examples
-
unbounded-spsc
An unbounded spsc queue built from
bounded_spsc_queue
s -
atomic-memcpy
Byte-wise atomic memcpy
-
bastion-executor
Cache affine NUMA-aware executor for Rust
-
timer-rs
timer used to schedule execution of closures at a given timestamp
-
mini-io-queue
Fixed-length, allocation and lock-free, async I/O oriented single-producer single-consumer queues
-
fibril
implementing distributed systems with commmunicating fibers
-
send-cell
Immutable memory region with runtime Send checking
-
sortlock
providing ordered locking
-
melodium-common
Common Mélodium elements and traits
-
csplib
CSP for concurrent programming
-
threadbeam
specialized channel type for beaming data out of a newly spawned thread
-
lines-rs
⚡ A fast line counter written in rust
-
context-coroutine
set of extensions to provide stackful coroutines; it is not officially associated with the context crate
-
rayon_croissant
<lqd> bikeshedding the name: something that is mapped folded and collected, a 🥐
-
ora-storage-memory
Part of the Ora scheduler framework
-
terminate
abstract logic to terminate threads, coroutines and the like
-
threadfin
A thread pool for running multiple tasks on a configurable group of threads
-
consumable_vec
generic approach to create a mutual database for multiple producers and consumers
-
todc-mem
Algorithms for shared-memory distributed systems
-
stewart
A minimalist, high-performance, and non-exclusive actor system
-
pacwrap-core
providing core functionality for pacwrap
-
async-mutex
Async mutex
-
cas-lib
Core lib for CAS
-
shareable
Thread shareable objects using the minimal amount of synchronization
-
thread_reviver
A Discord bot to revive any archived threads (to counter Discord's auto-archive function)
-
global_counter
Global, thread-safe counters
-
nbchan
Highly optimized non-blocking communication channels
-
actors-rs
Easily build fast, highly concurrent and resilient applications. An Actor Framework for Rust.
-
raliguard
Lazy rate limit semaphore implementation for your asynchronous code frequency execution
-
ppipe
An elegantly simple and lightweight library for making iterator pipelines concurrent and blazingly fast, hence the name ppipe (parallel pipe)
-
quinine
Atomic monotonic containers (Mono{Box,Arc})
-
voluntary-servitude
Thread-safe appendable list with lock-free iterator
-
crossbeam-epoch
Epoch-based garbage collection
-
parking_lot_rt
Parking-lot fork for real-time applications
-
movie
An actor / thread orchestration library / macro / framework
-
amadeus-types
Harmonious distributed data analysis in Rust
-
geese_pool
Message-passing system for networking with Geese
-
key-rwlock
keyed asynchronous reader-writer locks
-
request-channel
Async MPSC request-reponse channel
-
npnc
Lock-free queues
-
ez_logging
dirt-cheap logging system
-
work-steal-queue
Concurrent work-stealing queue, implemented using st3 and crossbeam-deque
-
ocl
OpenCL bindings and interfaces for Rust
-
spsc-buffer
Single-producer single-consumer lock-free buffer
-
pflock
A phase-fair reader-writer lock that reduces worst-case blocking for readers. Especially useful for multiprocessor real-time systems.
-
fuze
A mechanism to wait for a single signal which can be checked at any time
-
lock-free-freelist
A fast lock free limited length free list for multiple producer and consumer
-
bevy_gpu_compute_core
Empowering anyone to leverage GPU-acceleration with as little barrier-to-entry as possible
-
rusty-variation
deadlock-free session-typed communication
-
ste
A single-threaded executor with some tricks up its sleeve
-
async-map
A rarely-locking, shared map for Rust
-
objectpool
lock-free object pool, support no_std
-
workctl
number of higher-level control mechanisms for concurrent work scheduling, built on standard library concurrency primatives
-
refptr
Inherently reference counted structs
-
moka
A fast and concurrent cache library inspired by Java Caffeine
-
uppercut
Small and simple actor model implementation
-
easy-parallel
Run closures in parallel
-
open-coroutine-queue
Concurrent work-stealing queue, implemented using st3 and crossbeam-deque
-
two_phase_channel
A safe synchronisation-free parallel communication channel by statically forbidding conflicting accesses
-
semalock
concurrently writing to files in a safe and efficient manner
-
shared-resource-pool-builder
Create thread pools with a shared resource
-
atomic_box
A struct which allows multiple threads to safely update and read from a shared non-nullable pointer to heap data
-
ordered-locks
Compiletime deadlock avoidance
-
a_r_c_h_e_r_y
TEMPORARY CRATE
-
lazy_ref
Implements a non-blocking synchronization primitive for lazy-initialized immutable references
-
kernel
Abstract Reactive Streams
-
open-coroutine-iouring
The io_uring support for open-coroutine
-
readahead-iterator
Readahead from an iterator on a separate thread, returning items in order and synchronously
-
blocking_semaphore
performant blocking semaphore
-
rsevents-extra
Synchronization objects built on top of rsevents. Semaphore, countdown event, and more.
-
thread_db
Rust wrapper for libthread_db
-
syncell
Sync alternative to RefCell
-
supply-chain-trust-example-crate-000041
More compact and efficient implementations of the standard synchronization primitives
-
datacake-rpc
A zero-copy, actor-like RPC framework using rkyv
-
rcell
A Cell which can hold either an Arc or an Weak smartpointer or be empty
-
employer
Spawn worker threads and check on them later
-
balter-runtime
A load/stress testing framework
-
infinitree-macros
Embedded, encrypted database with tiered cache
-
rs_taskflow
executing graphs of tasks
-
pour
Optionally consed radix tries for fast set operations
-
quartz_sched
Minimalistic scheduling library for Rust
-
acto-rs
Experimental actor library, under development. (renamed from minions_rs).
-
crb-core
CRB | Composable Runtime Blocks | Core
-
thunk
Primitives for generic lazy evaluation in Rust. This crate requires nightly for
untagged_unions
. -
sync-wait-group
Wait group for synchronizing the beginning or end of some computation
-
task-notify
Notify async tasks when someone mutates data they're interested in
-
ballista-core
Ballista Distributed Compute
-
jackiechan
Bounded mpsc channel optimized for lazy bulk operations
-
coroutines
High performance coroutine library with native experience
-
threads_pool
This package provides an easy way to create and manage thread pools, so you don't have to
-
lossyq
concurrent single publisher, single consumer queue with fixed length, that never blocks the writer
-
sea-streamer-types
🌊 SeaStreamer Traits & Types
-
once_mut
Safe mutable reference to static variable that can be obtained only once
-
denog_runtime
denog runtime library
-
read-write-api
interface to unify single-threaded code and RwLocks-based code
-
poolio
A thread-pool
-
parallel-event-emitter
Parallel Event Emitter for concurrent listener invocation based on futures-rs and futures-cpupool
-
minicoroutine
mini coroutine library in rust
-
colosseum
A variety of arena allocators for Rust, including thread-safe arenas
-
kik_sync_service
A synchronous threading worker channel for generating the results you want with the data you need
-
simple_event_map
event map based on channels, provides a receiver that is either blocking or async
-
workerpool-rs
workerpool for rust
-
bichannel
Zero dependency std::mpsc based bidirectional channel
-
striped-lock
Striped Lock for Rust
-
llq
Wait-free SPSC linked-list queue with individually reusable nodes
-
chex
Global exit signal library
-
gmtx
Mutex that grant exclusive access to a group of members
-
swimming-pool
threadpool for running a number of jobs on a fixed number of threads
-
maybe-async-channel
A channel which may or may not be async
-
xarc
xarc
provides atomically swappable atomically refcounted smart pointers as a safer building block for lockfree algorithms than raw atomic pointers.Xarc
is comparable toArc
but… -
jthread
Deadlock-free Mutual Exclusion locks for Rust
-
chashmap
Fast, concurrent hash maps with extensive API
-
lucchetto
easily call a rust function without holding the GVL lock
-
fiona
Concurrent runtime written against liburing
-
mrsc
mpsc with requests
-
taskschd
windows taskschd demo
-
atomic_pingpong
Lightweight no_std ping-pong buffer, using AtomicU8 for synchronization
-
more-sync
More synchronization utils
-
monotone
counters and queues for coordination in distributed systems
-
mtxgroup
mutex group locks all mutexes at the same time
-
option-lock
mutex for Option values
-
rt-watchdog
Real-time userspace watchdog for Rust
-
swctx
One-shot channel with some special semantics
-
protoflow-blocks
Protoflow implements flow-based programming (FBP) for Rust using Protocol Buffers messages
-
yanoo
Lock-free mpmc broadcast channel
-
sync_cow
Thread-safe clone-on-write container for fast concurrent writing and reading
-
simplelock
abstractions for inter-process synchronization
-
srmap
A lock-free, eventually consistent, concurrent multi-value map
-
sorted-channel
sorted message-based communication channel
-
thread-lock
A wrapper that locks non-Send and non-Sync data to a specific thread
-
wasefire-sync
Portable non-blocking mutex
-
multichannel
A mpmc priority multi channel with dynamic channel registration and freezing
-
rendezvous_swap
Swap data and sync execution between a pair of threads efficiently
-
overdose
Fast, Row Oriented, Kotlin, Scala-like dataframe
-
ora-worker
Part of the Ora scheduler framework
-
sync-cell
A collection of easier to use thread-safe types for the creation of larger thread safe systems
-
bndpresbufch
Bounds-preserving channel for passing buffers
-
thread-broadcaster
A SPMC (Single producer multi consumer) broadcasting channel to broadcast notifications between threads
-
waitcell
A cell type containing a value which may not yet be available
-
orx-pinned-concurrent-col
A core data structure with a focus to enable high performance, possibly lock-free, concurrent collections using a PinnedVec as the underlying storage
-
async-once-watch
Asynchronous and shareable container which value is set once
-
stretto
high performance thread-safe memory-bound Rust cache
-
atomic-hyperloglog
thread-safe hyperloglog, with atomics
-
init_guard
A Synchronization Primitive for guarding against double initialization
-
momen
low overhead thread pool
-
membarrier
Process-wide memory barrier
-
yuki
multithreaded web archiver
-
c-map
Very fast concurrent hashmap
-
sentinel-actix
Sentinel middleware for Actix-Web
-
rayon-par-bridge
Process Rayon parallel processing with a traditional sequential Iterator
-
mtlog-tokio
Scoped logging for tokio runtimes with support for log files
-
proc-lock-api
APIs for the proc-lock crate
-
testtools
Helpers for eliminating boilerplate code in tests
-
ping-pong-cell
An atomic cell for up to two threads
-
pipeliner
nice interface for parallel programming with iterators
-
user-sync
user-space synchronization
-
promissory
One-shot value exhange between threads
-
slave-pool
thread pool
-
atomiclock_spinlock
spinlock
-
amadeus-aws
Harmonious distributed data analysis in Rust
-
scoped-threadpool-std
scoped threadpool implementation and related tests including a password hasher
-
agner-utils
An actor toolkit inspired by Erlang/OTP (utils)
-
hybrid-lock
A hybrid lock with optimistic locking
-
semaphorus
Atomic semaphores
-
netcon
A collections of tools and helper functions developed for and by NetCon Unternehmensberatung GmbH
-
rhythm
Rate limiter which allows VIPs, written in Rust
-
af-opencl-interop
ArrayFire is a high performance software library for parallel computing with an easy-to-use API. This crate is an addition on top of ArrayFire crate to enable users to mix RAW CUDA code in rust and ArrayFire.
-
triex
Trivial Executor
-
double-checked-cell-async
A thread-safe lazily initialized cell using double-checked locking
-
mpmcpq
Multi-producer multi-consumer Priority Queue
-
zestors
A fast and flexible actor-framework for building fault-tolerant Rust applications
-
rustc-rayon-core
Core APIs for Rayon - fork for rustc
-
executor-service
A fast and efficient Thread Pool like Java ExecutorService
-
meslin
Ergonomic messaging for Rust
-
juliex
a very basic future executor
-
safenv
A thread-safe wrapper around the standard library’s
env
module -
hv-cell
A no-std port of the
atomic_refcell
crate with additionalArc
-centric functionality -
polyester
Parallel iterator adaptors that accept arbitrary iterators
-
smartpool
A very customizable, future-aware threadpool
-
hurdles
Counter-based thread barrier
-
atomic_immut
Atomic immutable value
-
access-queue
limit the number of simultaneous accesses to a value
-
brutils
Some utilities for Rust
-
skipdb
An embedded, in-memory, zero-copy, atomicity, consistency, MVCC, almost lock-free and serializable snapshot isolation database engine
-
concurrency_toolkit
Easy switching between std::sync, tokio::sync and loom::sync
-
pairlock
A reader-writer lock with wait-free reads
-
lock-free-multi-producer-single-consumer-ring-buffer
A lock-free, multi-producer, single-consumer (MPSC) ring buffer. Optimized for sending and receiving 'bursts' of messages. Can also be used as a ring queue. It is a Rust port of Mindaugas Rasiukevicius's ringbuf.
-
remutex
Recursive mutex, adapted from Rust's standard library
-
bombs
Efficient single-producer multi-consumer channel types
-
bounded-spsc-queue
A bounded SPSC queue
-
malobu
Atomic MPMC Bus
-
stoplight
stoppable tasks/threads
-
rework
Multi-threaded task processing in the Master-Worker pattern
-
hv-atom
Convenient abstractions for atomic operations on smart pointer/reference types, based on the
atom
crate -
observable-btree
Reactive Observable BTree
-
wei-scheduler
wei scheduler
-
paradis-core
core functionality for paradis
-
amadeus-commoncrawl
Harmonious distributed data analysis in Rust
-
syncmap
fast, concurrent cache library built with a focus on performance and correctness. The motivation to build syncmap comes from the sync.Map in Golang
-
object-pool
A thread-safe object pool with automatic return and attach/detach semantics
-
rslint_rowan
threadsafe fork of rowan for the rslint project
-
gothack-future-parking_lot
An "as simple as possible" Future implementation for parking_lot
-
pmpmc
A priority multi producer multi consumer channel
-
open-coroutine-core
The open-coroutine is a simple, efficient and generic coroutine library
-
arbalest
Like Arc<T> but where weak references don't forbid mutable access
-
callback_cell
Like an Atomic<Option<Box<FnOnce()>>>
-
atomic_cell
Lock-free thread-safe mutable memory locations
-
cortex-m-rtfm
Real Time For the Masses (RTFM): a concurrency framework for building real time systems
-
optimistic-cell
lock-like structure for low-overhead optimistic concurrency
-
locktick
Automated lock accounting & profiling
-
busan
An actor implementation for Rust
-
scrappy_do
A concurrent asynchronous webscraping framework
-
slock
An async mutex that never deadlocks
-
melodium-lang
Mélodium language parsing and semantic analyser
-
laststage
fast, durable, high concurrent HashMap
-
scherben-map
Concurrent Sharded HashMap for Rust
-
rpools
A minimalist workerpool for rust
-
lightproc
Lightweight process abstraction for Rust
-
riffy
An unbounded, wait-free, multi-producer-single-consumer queue
-
liblightning
High-performance general-purpose stackful coroutine library
-
fencing
tokens
-
minactor
Minimal actor framework for Rust with tokio
-
evelyn
event distribution library
-
venom_log
Rust async log High-performance asynchronous logging
-
hiatus
Debug concurrent programs by choosing specific execution traces
-
chunker
Minimalistic parallel executor
-
eventbus
Safe, fast and concurrent event system, inspired by the MinecraftForge event bus
-
ccl
Fast datastructures for use in highly concurrent systems
-
disk_log
High Throughout, NonBlocking Disk-based logger
-
static_locks
The
parking_lot
locks but usable in statics and const fn -
bondi
Single producer, multi consumer lock-free ring buffer (experimental)
-
thread-safe
Container that allows thread safety for thread-unsafe objects
-
ach-cell
Atomic Channel
-
zsling
Rust Wrapper around a Sequentially lockign (SeqLock) Ring Buffer written in Zig
-
atomic-bus
Atomic MPMC Bus
-
qrwlock
Fair queued read-write lock
-
verona-rt
Idiomatic binding to the verona runtime
-
sea-streamer-runtime
🌊 SeaStreamer async runtime abstraction
-
bevy_gpu_compute_macro
Empowering anyone to leverage GPU-acceleration with as little barrier-to-entry as possible
-
parking_lot_core
An advanced API for creating custom synchronization primitives
-
tange
Scalable Task-based Parallelism Framework
-
shrink_pool
A thread pool which agressively terminates its threads as soon as they are idle
-
rayon-core-wasm
Core APIs for Rayon
-
spsc-bip-buffer
A concurrent, spsc ring-buffer with sized reservations
-
parking_monitor
Parking-lot-flavored monitor synchronization construct
-
locker
named mutex/locker for rust-lang concurrency
-
unsync_channel
!Send/!Sync channels for Rust
-
protoflow-flume
Protoflow implements flow-based programming (FBP) for Rust using Protocol Buffers messages
-
ya-ring-buf
Ring Buffer. SPSC channel with direct access for bytes/Copy.
-
cura
arc-lock-system that should clean up the code a lot
-
sero
lightweight library for maintaining a shared store of locks
-
pi_vec_remain
vec remain range
-
par-map
Parallel map and flat_map
-
fibril_verifier
Verifies behavior for distributed systems implemented with the Fibril library
-
waitable
A synchronized (atomic) value container implementing the Mutex+Condvar pattern for efficient blocking waits
-
sea-streamer-stdio
🌊 SeaStreamer Standard I/O Backend
-
tiny-actor
A minimal actor framework for Rust
-
fixed_ring_buffer
An asynchronous SPSC fixed-capacity look-free ring buffer, which can be used to transfer data between two threads or between two asynchronous tasks
-
arcstr
A better reference-counted string type, with zero-cost (allocation-free) support for string literals, and reference counted substrings
-
tasic
Tokio, Async_STD, Smol, Interface Crate
-
firefly
[EXPERIMENTAL]
-
queued-task
concurrent queue task processing
-
storage-map
Concurrent append-only map storage
-
theatre
A concise async actor model implementation
-
rust-waitgroup
A Golang like WaitGroup
-
sling
Sequentially lockign (SeqLock) Ring Buffer
-
countdown_latch
A synchronization aid that allows one or more threads to wait until a set of operations being performed in other threads completes
-
ach-util
Atomic Channel
-
namedlock
Namespaces for named locks
-
hybridfutex
An efficient hybrid wait queue futex designed for high-contention scenarios, supporting both synchronous and asynchronous waiting and notification. It supports notify and notify_many on all targets.
-
ump-server
Server message dispatch loop for ump
-
dynamic-pool
a lock-free, thread-safe, dynamically-sized object pool
-
logmap
A concurrent hashmap using a log for buckets
-
worker-pool
handle a set of worker threads, which need to communicate back their result to the main thread
-
abyss-promise
[abyss] A simple promise implementation with adaptive threadpool support
-
sstb
A thread-safe sstables library
-
yastl
scoped threadpool library
-
scoped-pool
A flexible thread pool providing scoped threads
-
borrowed-thread
thread-safe way to pass borrow to thread::spawn
-
tokio-sync-read-stream
Create a stream from a std::io::Read using Tokio blocking threads
-
horde
threads
-
rtic-core
Core abstractions of the Real-Time Interrupt-driven Concurrency framework
-
lagoon
A thread pool crate with an array of features
-
arl
A rate limiter to be used with tokio
-
kabuki
Name reservation
-
waitmap
an awaitable concurrent hash map
-
mycorrh
fast concurrent messaging system for Rust
-
key-mutex
Access mutexes by key
-
bbq-rs
A Block-based Bounded Queue for Exchanging Data and Profiling
-
boomerang_util
Boomerang
-
roundabout
An message oriented concurrent runtime