System.Threading.Channels 9.0.0

About

The System.Threading.Channels library provides types for passing data asynchronously between producers and consumers.

Key Features

  • Abstractions representing channels for one or more producers to publish data to one or more consumers
  • APIs focused on asynchronous production and consumption of data
  • Factory methods for producing multiple kinds of channels

How to Use

using System;
using System.Threading.Channels;
using System.Threading.Tasks;

Channel<int> channel = Channel.CreateUnbounded<int>();

Task producer = Task.Run(async () =>
{
    int i = 0;
    while (true)
    {
        channel.Writer.TryWrite(i++);
        await Task.Delay(TimeSpan.FromSeconds(1));
    }
});

Task consumer = Task.Run(async () =>
{
    await foreach (int value in channel.Reader.ReadAllAsync())
    {
        Console.WriteLine(value);
    }
});

await Task.WhenAll(producer, consumer);

Main Types

The main types provided by this library are:

  • System.Threading.Channel<T>
  • System.Threading.Channel

Additional Documentation

https://www.nuget.org/packages/System.Threading.Tasks.Dataflow/

Feedback & Contributing

System.Threading.Channels is released as open source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.

Showing the top 20 packages that depend on System.Threading.Channels.

Packages Downloads
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
7,118
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
3,291
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
2,564
RabbitMQ.Client
The RabbitMQ .NET client is the official client library for C# (and, implicitly, other .NET languages)
2,267
RabbitMQ.Client
The RabbitMQ .NET client is the official client library for C# (and, implicitly, other .NET languages)
1,958
RabbitMQ.Client
The RabbitMQ .NET client is the official client library for C# (and, implicitly, other .NET languages)
1,723
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
1,638
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
994
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
990
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
950
RabbitMQ.Client
The RabbitMQ .NET client is the official client library for C# (and, implicitly, other .NET languages)
939
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
925
Microsoft.CodeAnalysis.Workspaces.Common
A shared package used by the .NET Compiler Platform ("Roslyn") including support for analyzing projects and solutions. Do not install this package manually, it will be added as a prerequisite by other packages that require it. More details at https://aka.ms/roslyn-packages This package was built from the source at https://github.com/dotnet/roslyn/commit/6a5a63bbc9f4449d9bd1e95a8f9624939c3ccdc3.
923
Microsoft.CodeAnalysis.Workspaces.Common
A shared package used by the .NET Compiler Platform ("Roslyn") including support for analyzing projects and solutions. Do not install this package manually, it will be added as a prerequisite by other packages that require it. More details at https://aka.ms/roslyn-packages This package was built from the source at https://github.com/dotnet/roslyn/commit/81d9274600db701a8b08ed8af3fd6b00a775cc33.
851
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
436
RabbitMQ.Client
The RabbitMQ .NET client is the official client library for C# (and, implicitly, other .NET languages)
326
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
286
StackExchange.Redis
High performance Redis client, incorporating both synchronous and asynchronous usage.
104
Microsoft.AspNetCore.SignalR.Client.Core
Client for ASP.NET Core SignalR This package was built from the source code at https://github.com/dotnet/aspnetcore/tree/3f1acb59718cadf111a0a796681e3d3509bb3381
70
RabbitMQ.Client
The RabbitMQ .NET client is the official client library for C# (and, implicitly, other .NET languages)
33

https://go.microsoft.com/fwlink/?LinkID=799421

.NET Framework 4.6.2

.NET 8.0

  • No dependencies.

.NET 9.0

  • No dependencies.

.NET Standard 2.0

.NET Standard 2.1

  • No dependencies.

Version Downloads Last updated
9.0.0 7 11/13/2024
9.0.0-rc.2.24473.5 7 10/11/2024
9.0.0-rc.1.24431.7 8 09/11/2024
9.0.0-preview.7.24405.7 8 08/14/2024
9.0.0-preview.6.24327.7 11 07/15/2024
9.0.0-preview.5.24306.7 12 06/19/2024
9.0.0-preview.4.24266.19 9 05/26/2024
9.0.0-preview.3.24172.9 13 04/14/2024
9.0.0-preview.2.24128.5 12 03/19/2024
9.0.0-preview.1.24080.9 14 02/29/2024
8.0.0 71 11/24/2023
8.0.0-rc.2.23479.6 15 11/03/2023
8.0.0-rc.1.23419.4 15 09/29/2023
8.0.0-preview.7.23375.6 16 08/14/2023
8.0.0-preview.6.23329.7 17 08/14/2023
8.0.0-preview.5.23280.8 19 08/14/2023
8.0.0-preview.4.23259.5 18 08/10/2023
8.0.0-preview.3.23174.8 16 06/20/2023
8.0.0-preview.2.23128.3 16 08/14/2023
8.0.0-preview.1.23110.8 15 06/30/2023
7.0.0 1,057 08/14/2023
7.0.0-rc.2.22472.3 19 06/30/2023
7.0.0-rc.1.22426.10 16 08/14/2023
7.0.0-preview.7.22375.6 17 06/19/2023
7.0.0-preview.6.22324.4 21 08/14/2023
7.0.0-preview.5.22301.12 22 08/14/2023
7.0.0-preview.4.22229.4 18 08/14/2023
7.0.0-preview.3.22175.4 20 08/14/2023
7.0.0-preview.2.22152.2 18 06/19/2023
7.0.0-preview.1.22076.8 16 08/14/2023
6.0.2-mauipre.1.22102.15 16 08/14/2023
6.0.2-mauipre.1.22054.8 13 08/14/2023
6.0.0 927 07/14/2023
6.0.0-rc.2.21480.5 16 08/14/2023
6.0.0-rc.1.21451.13 17 08/14/2023
6.0.0-preview.7.21377.19 18 08/01/2023
6.0.0-preview.6.21352.12 21 06/21/2023
6.0.0-preview.5.21301.5 21 06/19/2023
6.0.0-preview.4.21253.7 15 08/14/2023
6.0.0-preview.3.21201.4 18 08/14/2023
6.0.0-preview.2.21154.6 17 08/14/2023
6.0.0-preview.1.21102.12 23 08/14/2023
5.0.0 21 07/02/2023
5.0.0-rc.2.20475.5 19 07/16/2023
5.0.0-rc.1.20451.14 16 08/14/2023
5.0.0-preview.8.20407.11 16 08/14/2023
5.0.0-preview.7.20364.11 20 06/30/2023
5.0.0-preview.6.20305.6 17 08/14/2023
5.0.0-preview.5.20278.1 18 07/01/2023
5.0.0-preview.4.20251.6 18 07/02/2023
5.0.0-preview.3.20214.6 19 08/14/2023
5.0.0-preview.2.20160.6 20 08/14/2023
5.0.0-preview.1.20120.5 15 08/14/2023
4.7.1 5,859 12/16/2020
4.7.0 7,108 12/16/2020
4.7.0-preview3.19551.4 17 07/17/2023
4.7.0-preview2.19523.17 15 08/14/2023
4.7.0-preview1.19504.10 15 08/14/2023
4.6.0 17 08/14/2023
4.6.0-rc1.19456.4 16 08/14/2023
4.6.0-preview9.19421.4 14 07/02/2023
4.6.0-preview9.19416.11 16 06/20/2023
4.6.0-preview8.19405.3 21 08/14/2023
4.6.0-preview7.19362.9 22 08/14/2023
4.6.0-preview6.19303.8 16 08/14/2023
4.6.0-preview6.19264.9 15 08/14/2023
4.6.0-preview5.19224.8 19 08/14/2023
4.6.0-preview4.19212.13 16 08/14/2023
4.6.0-preview3.19128.7 15 08/14/2023
4.6.0-preview.19073.11 18 08/14/2023
4.6.0-preview.18571.3 14 08/14/2023
4.5.0 992 12/16/2020
4.5.0-rc1 17 08/14/2023
4.5.0-preview2-26406-04 17 08/14/2023
4.5.0-preview1-26216-02 18 08/14/2023