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