在C#中克隆或复制任务

时间:2019-03-20 20:17:30

标签: c# task

因为任务不能运行两次(它将引发异常)。我正在创建2个任务。 是否有一种很好的方法来复制任务,也许是这样的:

    Task t1 = new Task();
    Task t2 = new Task(t1);

1 个答案:

答案 0 :(得分:6)

您真的需要克隆任务吗?如果不是,那么达到相同结果的一种方法是先创建一个动作,然后创建两个执行相同动作的任务。

var work = new Action(() =>
{
    // do work here
});

var t1 = new Task(work);
var t2 = new Task(work);