C# 异步流 IAsyncEnumerable<T>
学习C#异步流,使用await foreach处理异步数据序列 · 难度:入门 · +15XP
异步流概述
C# 8 引入的异步流(Async Streams)允许你异步生成和消费数据序列。通过 IAsyncEnumerable
核心接口
| 接口 | 描述 |
|---|---|
| IAsyncEnumerable | 可异步枚举的序列 |
| IAsyncEnumerator | 异步枚举器 |
生产者示例
async IAsyncEnumerable GenerateNumbersAsync()
{
for (int i = 0; i < 10; i++)
{
await Task.Delay(100); // 模拟异步操作
yield return i;
}
} 消费者示例
await foreach (var num in GenerateNumbersAsync())
{
Console.WriteLine(num);
}💡 练习提示:创建一个异步流,从文件中逐行读取数据并返回,使用 await foreach 消费。