C#教程

关注公众号 jb51net

关闭
首页 > 软件编程 > C#教程 > C# TaskFactory

C#中TaskFactory实现

作者:五花肉.

在C#中,TaskFactory是一个用于创建异步任务的类,本文主要介绍了C#中TaskFactory实现,具有一定的参考价值,感兴趣的可以了解一下

在C#中,TaskFactory是一个用于创建异步任务的类。它提供了一种方便的方式来创建Task对象,这些对象表示可以异步执行的操作。TaskFactory类位于System.Threading.Tasks命名空间下。

要使用TaskFactory,您需要导入相应的命名空间:

using System.Threading.Tasks;

TaskFactory类提供了几个静态方法,用于创建不同类型的异步任务。以下是TaskFactory的一些常用方法:

下面是一个使用TaskFactory的示例,演示如何创建并运行异步任务:

using System;  
using System.Threading.Tasks;  
  
class Program  
{  
    static void Main(string[] args)  
    {  
        // 创建异步任务  
        Task<int> asyncTask = TaskFactory.StartNew<int>(() =>  
        {  
            // 模拟耗时操作  
            Thread.Sleep(2000);  
            return 42; // 返回结果  
        });  
  
        // 注册任务完成后的回调函数  
        asyncTask.ContinueWith(t =>  
        {  
            Console.WriteLine("异步任务完成,结果为:" + t.Result);  
        });  
  
        // 等待用户输入,以便在任务完成前暂停程序执行  
        Console.ReadLine();  
    }  
}

在上面的示例中,我们使用TaskFactory的StartNew方法创建了一个异步任务。该任务会休眠2秒钟,然后返回42作为结果。然后,我们使用ContinueWith方法注册了一个回调函数,该函数在异步任务完成后被调用,并输出任务的结果。最后,我们使用Console.ReadLine()等待用户输入,以便在任务完成前暂停程序执行。

taskFactory.StartNew(() => { 方法; }, TaskCreationOptions.LongRunning);

在C#的TaskCreationOptions枚举中,有以下几种类型:

到此这篇关于C#中TaskFactory实现的文章就介绍到这了,更多相关C# TaskFactory内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文