Правильно ли вы используете токен отмены? 5 рекомендуемых шаблонов | Изучение C# и DOTNET
Автор: Rahul Nath
Загружено: 2024-03-26
Просмотров: 3741
Описание:
CancellationTokens в .NET позволяет вызывающему объекту выразить потерю интереса к результату операции. Это может происходить на уровне функции, класса, конечной точки API и т. д.
Но означает ли это, что все запросы одинаковы и могут быть отменены одинаково? Короткий ответ: нет!
Итак, давайте изучим несколько рекомендаций по использованию CancellationTokens в коде вашего приложения. Вот пять рекомендуемых шаблонов, которые можно использовать в качестве руководства при работе с CancellationTokens в .NET.
1. Избегайте отмены операций после возникновения побочных эффектов, чтобы предотвратить несоответствия в состоянии приложения. 2. Необязательно в публичном API и обязательно везде (сделайте намеренный выбор в пользу передачи `CancellationToken`).
3. Используйте `CancellationToken.None` после точки «нет отмены» (может привести к побочным эффектам).
4. Проверьте `CancellationToken.CanBeCancelld`, если ваши функции могут быть более эффективны, когда токены невозможно отменить. (`Task.Delay` — хороший пример.)
5. Игнорируйте `CancellationToken`, если работа выполняется очень быстро.
00:00 Введение
01:15 Должны ли все функции быть отменяемыми?
05:02 1. Избегайте отмены после побочных эффектов
06:40 2. Обязательное использование CancellationToken в функциях
08:09 3. CalcellationToken.None
10:01 4. CancellationToken.CanBeCancelled
11:35 5. Игнорируйте CancellationToken
Благодарим AWS за спонсирование этого видео.
🔗 Токен отмены — https://www.rahulpnath.com/blog/cance...
🔗 Код — https://github.com/rahulpnath/youtube...
Дополнительные материалы
📹Токен отмены — • Cancellation Token in .NET | Exploring C# ...
📹Серия C# — https://bit.ly/mycsharp
📹Серия ASP — https://bit.ly/asp-net-core-series
📹Серия Azure — https://bit.ly/azure-series
📹Серия AWS — https://bit.ly/aws-net-series
📹Серия RabbitMQ — https://bit.ly/rabbitmq-net-series
Приходите поздороваться! ✋
🎙️Применение - https://www.rahulpnath.com/uses
🌍Блог - https://www.rahulpnath.com/
✉ Подпишитесь на мою рассылку - https://www.rahulpnath.com/subscribe
🐦Twitter - / rahulpnath
📸Instagram - / rahulpnath
#dotnet #csharp
Повторяем попытку...
Доступные форматы для скачивания:
Скачать видео
-
Информация по загрузке: