Channels enable a producer to safely pass data over to a consumer along with the appropriate notifications in both directions.
In this episode, Stephen Toub chats with Rich about the what, why and how of using the System.Threading.Channels library. They walk us through a simple demo of using channels and also discuss the various strategies at our disposal.
- [00:55] - What are channels used for?
- [01:35] - Creating a basic channel implementation
- [09:15] - Moving to System.Threadding.Channels
- [11:34] - What are the benefits of using the System.Threadding.Channels?
- [14:11] - What are some of the available back pressure strategies?
- [20:58] - Working with varying number of producers or consumers
- [21:54] - What are the merits of Channels compared to Pipelines?
- [23:35] - Can channels be used out of process scenarios?
- [24:30] - Can channels be used with pub/sub
- [25:28] - What's next for channels?
- An introduction to System.Threading.Channels
- System.Threading.Channels NuGet package
- System.Threadding.Channels on GitHub