Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add regression test for case when one of two channel sources deinitialized. #2

Open
wants to merge 7 commits into
base: fb-async-backpressured-stream
Choose a base branch
from

Conversation

ser-0xff
Copy link

We tried using MultiProducersSingleConsumerChannel instead of AsyncStream and encountered behavior unexpected for us. We expected the channel to remain functional as long as at least one associated source was active. However, in the current implementation, it appears that the channel transitions to a finished state as soon as any single source instance is deinitialized.

Is this the expected behavior?

This PR includes a minimal test to reproduce the issue.

FranzBusch and others added 7 commits December 19, 2023 12:49
# Motivation

The pitch to add external backpressure support to the standard libraries `AsyncStream` got returned for revision since there are larger open questions around `AsyncSequence`. However, having external backpressure in a source asynchronous sequence is becoming more and more important.

# Modification

This PR adds a modified proposal and implementation that brings the Swift Evolution proposal over to Swift Async Algorithms.
@FranzBusch FranzBusch force-pushed the fb-async-backpressured-stream branch 4 times, most recently from ae3f677 to b30ec17 Compare March 29, 2025 13:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants