-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
Deprecate produce-consume #17699
Comments
We may want to have a bit of a bikeshedding about what we call these operations since they are going to be the One True Inter-Task Communication method. |
is there any work in progress started on this? |
Not yet. |
Any chance of getting this done nowish? |
Will do. |
We have a couple of options here. Option 1 : Deprecate Option 2 : Deprecate I am inclined towards the second option. Any thoughts? |
what kind of overhead would having an implicit channel for every task add? |
Minimal. We would associate a Channel with a Task only when |
I implemented Option 2 and was not too happy with the result. While |
What made you unhappy with the result, @amitmurthy? You didn't like the API or the implementation was messy? |
The implementation was clean. One of the stated reasons for deprecating Channels as an entity distinct from Tasks is Go like. Opted for the former instead of having both. |
We currently have two different methods of inter-task communication. This issue is a reminder to deprecate the
produce
/consume
APIand have that similar functionality supported by implementing support forChannel(0)
, i.e.,put!
on a channel backed by by a 0-sized buffer will block till the time a matchingtake!
is called.Edit : Unbuffered channels, i.e.,
Channel(0)
have been implemented.The text was updated successfully, but these errors were encountered: