我必须在一个线程中执行一个长进程操作并继续将结果返回给一个函数。这里是我的代码:C#任务工厂超时
Task<ProductEventArgs>.Factory.StartNew(() =>
{
try
{
// long operation which return new ProductEventArgs with a list of product
}
catch (Exception e)
{
return new ProductEventArgs() { E = e };
}
}).ContinueWith((x) => handleResult(x.Result), TaskScheduler.FromCurrentSynchronizationContext());
问题其实我没有超时。我想把一个计时器,以便返回这样的事情:
new ProductEventArgs() { E = new Exception("timeout") };
如果超时已达到。 不能使用await/async。 非常感谢!
爱你: - *我在C#有点新的,更多的线程管理,你让我的天! – Rototo