Crossfire: High-performance lockless spsc/mpsc/mpmc channels for Rust
1–10 of 22 posts
Re: Crossfire: High-performance lockless spsc/mpsc/mpmc channels for Rust
#2SPSC = Single Producer Single Consumer
MPMC = Multiple Producer Multiple Consumer
(I'll let you deduce the other abbreviations)
Re: Crossfire: High-performance lockless spsc/mpsc/mpmc channels for Rust
#3[0]: https://github.com/frostyplanet/crossfire-rs/wiki#kanal [1]: https://news.ycombinator.com/item?id=45774086
Re: Crossfire: High-performance lockless spsc/mpsc/mpmc channels for Rust
#4When reading this project's wiki [0], it mentions that Kanal (another channel implementation) uses an optimization that "makes [the] async API not cancellation-safe". I wonder if this is the same / related issue to the recent HN thread on "future lock" [1]. I hadn't heard of this cancellation safety issue prior to that other HN thread. [0]: https://github.com/frostyplanet/crossfire-rs/wiki#kanal [1]: https://news.yco…
Re: Crossfire: High-performance lockless spsc/mpsc/mpmc channels for Rust
#5Re: Crossfire: High-performance lockless spsc/mpsc/mpmc channels for Rust
#6Re: Crossfire: High-performance lockless spsc/mpsc/mpmc channels for Rust
#7Because I had to look it up: SPSC = Single Producer Single Consumer MPMC = Multiple Producer Multiple Consumer (I'll let you deduce the other abbreviations)
M = Multi
---
C = Consumer
P = Producer
Re: Crossfire: High-performance lockless spsc/mpsc/mpmc channels for Rust
#8When reading this project's wiki [0], it mentions that Kanal (another channel implementation) uses an optimization that "makes [the] async API not cancellation-safe". I wonder if this is the same / related issue to the recent HN thread on "future lock" [1]. I hadn't heard of this cancellation safety issue prior to that other HN thread. [0]: https://github.com/frostyplanet/crossfire-rs/wiki#kanal [1]: https://news.yco…
Re: Crossfire: High-performance lockless spsc/mpsc/mpmc channels for Rust
#9Re: Crossfire: High-performance lockless spsc/mpsc/mpmc channels for Rust
#10Using stuff like this, does it make sense to use Rust in a golang-style where instead of async and its function colouring, you spawn coroutines and synchronize over channels?