我想知道为Tasks实现dispose功能是否有任何好处。这会有什么不同吗?这会迫使内存更快地清理吗?
Task updateTask = UpdateRemoteAsync()
await updateTask;
与
using (Task updateTask = UpdateRemoteAsync())
{
await updateTask;
}
在大多数情况下,不,当您处理Task
时,您正在处理它们分配的WaitHandle
,根据Microsoft的说法,由于.NET Framework 4.5具有async/await
功能,WaitAll
和WaitAny
根本不分配一个,除非您明确需要IAsyncResult.AsyncWaitHandle
。
进一步阅读:MS Dev博客。