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