如何在C#任务并行库中获取TaskExecutionTime?

时间:2012-09-12 23:44:12

标签: .net task-parallel-library

我正在使用任务库并使用Wait with timeout参数。我该如何设置taskExecutionTime?

int taskExecutionTime=5000;
try
{
    bool hasTimeout=!myTask.Wait(5000);
    if (!hasTimeout)
       taskExecutionTime=???     
}
catch (AggregateException)
{
    taskExecutionTime=???
}

更新:

我不需要myTask的实时性能。例如,我使用.NET的HtpWebRequest和不同的代理。我想知道并比较代理表现。通用解决方案会更好,所以我们每个人都可以使用它。

1 个答案:

答案 0 :(得分:1)

由于您正在进行等待呼叫,我认为您只需按照正常的方式进行同步代码 - Stopwatch.StartNew()或var startTime = DateTime.Now或任何正确的启动任务,然后查看Wait返回false或抛出的经过时间。

我误解了你想要做什么吗?