crossbeam
crossbeam copied to clipboard
Tools for concurrent programming in Rust
UPDATE(taiki-e): The error originally reported here no longer exists. See https://github.com/crossbeam-rs/crossbeam/issues/545#issuecomment-1192785003 for the remaining SB violations currently reported. The fix for SB violations in epoch exists in https://github.com/crossbeam-rs/crossbeam/pull/871, and using...
I've been trying to understand the `SegQueue` implementation to reply to #675. These are some notes I took along the way: - https://github.com/crossbeam-rs/crossbeam/blob/b11f1a83e6362589979a4c58c79895cc936b09fb/crossbeam-queue/src/seg_queue.rs#L67 Might be UB? Need to know whether...
Is it possible to use AtomicCell for struct where underlying atomic type is rounded up to the nearest power of two? For example this would use `AtomicU32` ```rust struct Foo...
I want to create a "Notification center" to facilitate decoupled message passing between parts of my application i.e. similar to https://developer.apple.com/documentation/foundation/nsnotificationcenter I couldn't find an existing solution (maybe you know...
I need to parse a set of log files and combine them into a single output. We have a few gigs of logs, so takes a few minutes to complete...
Lets say during the process shutdown I want: * The consumer thread process all items _already_ pushed to the channel. * The producer thread stops pushing new items to the...
to be documented related to https://github.com/crossbeam-rs/crossbeam/issues/852
Currently, lock-free data structures such as `ArrayQueue` and `SegQueue` can only be modified via interior mutability (methods accept `&self`). It would be very useful if there was another set of...
Hi, nice to meet you and thanks for maintaining this crate. :) I found some kind of performance issue spanning cross-crate code interactions, ultimately resulting in many cpu cycles being...
It is well known that SeqLocks - the underlying algorithm of `AtomicCell` - rely on data races which is technically always UB, though in practice it is assumed that a...