什么是TaskEx
?在 http://www.i-programmer.info/programming/c/1514-async-await-and-the-ui-problem.html?start=1或 await TaskEx.Delay或 Await async clarification .我用
Task DoWork()
{
return Task.Run(() =>
{
for (int i = 0; i < 30; i++)
{
Thread.Sleep(1000 * 60 * 30);
}
});
}
示例使用这个
Task DoWork()
{
return TaskEx.Run(() =>
{
for (int i = 0; i < 10; i++)
{
Thread.Sleep(500);
}
}
});
我这样调用它 await DoWork();
如果您只使用 Task
,await
什么也不返回,也没有响应。如果我使用 TaskEx
它说它在上下文中不存在。
TaskEx
应该是一个类还是具有某种功能的东西?
拳头一个作品这是我的错误。
最佳答案
TaskEx
只是一个额外的类,最初在 .NET 4.5 发布之前随 C# 5 的 async/await 扩展的 CTP 一起发布...现在是 Async Targeting Pack 的一部分(又名 Microsoft.Bcl.Async
NuGet package ),以防您想使用 async/await 但目标是 .NET 4.0(没有它所需的一些代码)。
如果您使用的是 .NET 4.5 或更高版本,只需使用 Task.Run
,它会执行相同的操作。 (您不会使用目标包,因此您不会有 TaskEx
。)异步目标包无法将静态方法添加到现有的 Task
类,因此根本不需要 TaskEx
。
关于c# - 等待异步 TaskEx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35041478/