| 1234567891011121314151617 |
- namespace qdr.fnd.core.pqueue.fnd.candidates
- {
- internal static class TaskExt
- {
- public static async Task TimeoutAfter(this Task task,CancellationTokenSource timeoutCancellationTokenSource, TimeSpan timeout)
- {
- if (await Task.WhenAny(task, Task.Delay(timeout, timeoutCancellationTokenSource.Token)) == task)
- {
- timeoutCancellationTokenSource.Cancel();
- await task;
- return;
- }
- throw new TimeoutException("The operation has timed out.");
- }
- }
- }
|