futures-rs
futures-rs copied to clipboard
Zero-cost asynchronous programming in Rust
Hi! Sorry if the title doesn't make a lot of sense. I am designing a system that spawns several tokio tasks. I want to be able to wait for any...
I noticed that the code for the queue part of the mpsc channel was borrowed from the standard library, but it was since relicensed in https://github.com/rust-lang/rust/pull/42149, so I think it's...
It would be beneficial to have an abstraction over the interface we expect UDP sockets to provide, so that protocols built on top of UDP can be reactor agnostic.
Add method `feed_all` to `SinkExt`. This combinator is like `send_all`, except that it does not flush the sink at the end. This was originally submitted as part of #2155, but...
Importantly, this affects the behavior of peek _without_ requiring an async context. Otherwise within an async context one can simply clone and await a shared future to achieve the same...
How many `Waker`s should items implementing say `AsyncRead` and `AsyncWrite` have to store? At least some libs1 store two – a "read waker" and a "write waker". The former is...
https://www.reddit.com/r/rust/comments/gehh0q/notes_on_iouring/fpnhv04?utm_source=share&utm_medium=web2x has more context. cc @withoutboats @Nemo157
Inspired by [@Ericson2314's comment](https://github.com/rust-lang-nursery/portability-wg/issues/12#issuecomment-371922047) on a portability-wg issue about allocation-less `std::io::Error` I decided to attempt a two-layered approach to `Async{Read,Write}` allowing supporting `no_std` targets with most of the `futures-io` and...
For `Future`, `poll` should not be called again after it returns `Poll::Ready` (terminating the future). For `Stream`, `poll_next` should not be called again after it returns `Poll::Ready(None)` (terminating the stream)....
Before we had `Sink::poll_ready`, senders always had to have an item ready to send before interacting with the `Sink`. This sometimes led to unnecessary buffering. The most trivial example of...