{"repo":"zesterer/flume","free":true,"listed":false,"github":"https://github.com/zesterer/flume","clone":"git clone https://github.com/zesterer/flume.git","description":"A safe and fast multi-producer, multi-consumer channel.","language":"Rust","stars":3063,"topics":["rust","concurrency","channel"],"license":"Apache-2.0","category":"dev-tools","readme_excerpt":"Flume A blazingly fast multi-producer, multi-consumer channel. Why Flume? - Featureful : Unbounded, bounded and rendezvous queues - Fast : Always faster than std::sync::mpsc and sometimes crossbeam-channel - Safe : No unsafe code anywhere in the codebase! - Flexible : Sender and Receiver both implement Send + Sync + Clone - Familiar : Drop-in replacement for std::sync::mpsc - Capable : Additional features like MPMC support and send timeouts/deadlines - Simple : Few dependencies, minimal codebase, fast to compile - Asynchronous : async support, including mix 'n match with sync code - Ergonomic : Powerful select -like interface Usage To use Flume, place the following line under the [dependencies] section in your Cargo.toml : Cargo Features Flume comes with several optional features: - spin : use spinlocks instead of OS-level synchronisation primitives internally for some kind of data access (may be more performant on a small number of platforms for specific workloads) - select : Adds support for the Selector API, allowing a thread to wait on several channels/operations at once - async : Adds support for the async API, including on otherwise synchronous channels - eventual-fairness : Use randomness in the implementation of Selector to avoid biasing/saturating certain events over others You can enable these features by changing the dependency in your Cargo.toml like so: Benchmarks Although Flume has its own extensive benchmarks, don't take it from here that Flume is quick. The fo","default_branch":null,"files":null,"tree":[],"storefront":"/r/zesterer","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/zesterer/flume/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}