使用带有方法的任务在同一时间设置多个变量

时间:2013-11-02 18:38:49

标签: c# .net task-parallel-library task

我有三个变量,我使用相同的方法进行设置,我想使用任务同时设置它们。

现在看来是这样的:

double a = InputValidators.InputConverter(txtA.text);
double b = InputValidators.InputConverter(txtB.text);
double c = InputValidators.InputConverter(txtC.text);

如何使用任务

同时对所有这三种方法使用该方法

如果有帮助,我正在使用C#.NET 4.5。

1 个答案:

答案 0 :(得分:2)

这将异步运行三个任务。无法控制它们实际开始的时间或顺序。见Task Class

Func<string, double> func = str => InputValidators.InputConverter(str);

Task<double> t1 = Task<double>.Factory.StartNew(() => func(txtA.text));
Task<double> t2 = Task<double>.Factory.StartNew(() => func(txtB.text));
Task<double> t3 = Task<double>.Factory.StartNew(() => func(txtC.text));

double a = t1.Result;
double b = t2.Result;
double c = t3.Result;