Как использовать CancellationTokenSource в Parallel.ForEachAsync ⇐ C#
Как использовать CancellationTokenSource в Parallel.ForEachAsync
Наличие этого обработчика:
public async Task Handle (запрос MyQuery, CancellationToken cancelToken) { вар cancelTokenSource = новый CancellationTokenSource (); ждут Parallel.ForEachAsync(myList, async (objectId, _) => { результат вар = ждут _service.GetObject(objectId); если (результат.Любой()) { ОтменаTokenSource.Cancel(); } }); if (cancellationTokenSource.IsCancellationRequested) return Result.Fail("Сообщение об ошибке."); вернуть Результат.ОК(); } Это работает, но мне интересно, правильно ли я использую здесь CancellationTokenSource?
Наличие этого обработчика:
public async Task Handle (запрос MyQuery, CancellationToken cancelToken) { вар cancelTokenSource = новый CancellationTokenSource (); ждут Parallel.ForEachAsync(myList, async (objectId, _) => { результат вар = ждут _service.GetObject(objectId); если (результат.Любой()) { ОтменаTokenSource.Cancel(); } }); if (cancellationTokenSource.IsCancellationRequested) return Result.Fail("Сообщение об ошибке."); вернуть Результат.ОК(); } Это работает, но мне интересно, правильно ли я использую здесь CancellationTokenSource?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение