quinn-rs / quinn

Async-friendly QUIC implementation in Rust
Apache License 2.0
3.85k stars 394 forks source link

Does dropping a connection cancel all pending streams? #1376

Closed sakridge closed 2 years ago

sakridge commented 2 years ago

Does dropping or closing a connection cancel all pending streams and anything await'ing those streams or could they potentially be stuck open after the connection is dropped?

Ralith commented 2 years ago

Dropping the Connection handle will not interfere with any remaining I/O handles such as SendStream or RecvStream. Only when every I/O handle is dropped will it be implicitly closed. Any thoughts on where we could better document this?

Ralith commented 2 years ago

On review I think I misunderstood your question slightly. To be clear, explicitly closeing a connection will always gracefully interrupt all outstanding operations.