使用c# yield实现延迟执行

   2024-10-06 6780
核心提示:在C#中,可以使用yield关键字来实现延迟执行。通过yield关键字,可以实现按需生成序列的功能,而不需要一次性生成所有元素。下面

在C#中,可以使用yield关键字来实现延迟执行。通过yield关键字,可以实现按需生成序列的功能,而不需要一次性生成所有元素。

下面是一个简单的示例,展示如何使用yield来实现延迟执行:

using System;using System.Collections.Generic;class Program{    static void Main()    {        foreach (var number in GetNumbers())        {            Console.WriteLine(number);        }    }    static IEnumerable<int> GetNumbers()    {        for (int i = 1; i <= 5; i++)        {            Console.WriteLine($"Generating number: {i}");            yield return i;        }    }}

在上面的示例中,GetNumbers方法返回一个IEnumerable类型的序列。在该方法中,使用yield return关键字来逐个地生成数字1到5,并在控制台打印每个生成的数字。

在Main方法中,通过foreach循环遍历GetNumbers方法返回的序列,实现延迟执行的效果。每次循环迭代时,都会调用GetNumbers方法来生成下一个数字。

通过使用yield关键字,可以实现简单而有效的延迟执行功能,适用于需要按需生成大量元素的情况。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号