Tom*_*ski 3 .net c# vb.net task-parallel-library async-await
我想知道是否有任何用例Task.Delay(-1)或Task.Delay(TimeSpan.FromMilliseconds(-1)).根据各自的文档,该方法创建在完成之前无限期等待的任务.我知道这await Task.Delay(...)不会阻塞线程也不会消耗太多资源,但是当浪费一些资源实际上很有用时,我想不出任何情况.
我的问题具体是关于Task.Deley()没有取消令牌的重载 - 包含取消令牌的重载可能会更有用,因为等待期可以被中断.
我是否错过了无限期等待任务的一些用例?它们只存在于方法重载之间的一致性吗?
我不认为他们打算将它用作Task.Delay(-1),而是使用Task.Delay(-1,cancellationToken).这样你就可以开始你的任务并永久阻止它,或者直到cancelToken(在这种情况下是一个"开始令牌")被触发.我想不出有理由自己做.Delay(-1)因为这也会阻止进程退出.
| 归档时间: |
|
| 查看次数: |
1304 次 |
| 最近记录: |