Code Contracts и async – вместе "веселее".

Рассмотрим две ситуации, которые могут произойти, если в проекте одновременно используются асинхронные методы и контракты.

Читать дальше...

Еще один аргумент за ConfigureAwait(false) в библиотеках

Как получить блокировку ASP.NET приложения одним вызовом .NET метода? Очень даже просто. Причем, данный способ справедлив также для WPF и WinForms.

Читать дальше...

ASP.NET CancellationToken

Пользователь только перешел на страницу и тут же ушел с неё, не дожидаясь завершения загрузки. Если это была простая html страница, то ничего ужасного не произошло. Но что если страница делает несколько "тяжелых" запросов?

Читать дальше...

Проблемы использования async void методов

Создавать и использовать async void методы необходимо с большой осторожностью. Все дело в том, что они способны вызвать непредсказуемое поведение приложения. Поэтому использовать их можно только в случае, если разработчик твердо уверен в том, что он делает.

Читать дальше...

Async/await, Task.Run или Parallel.For?

Библиотека .NET предлагает различные способы достижения асинхронности. Но какой из них выбрать в конкретной ситуации, когда надо запустить несколько задач одновременно?

Читать дальше...

Превращаем асинхронные события в async/await

Пока еще в .NET существуют классы (особенно от сторонних разработчиков), которые используют старую модель для асинхронности. Речь идет реализации с помощью событий. Однако, преобразовать такой код к виду async/await очень легко.

Читать дальше...

Инициализатор объекта + await = ошибка

Иногда случаются ситуации, когда ошибки появляются, как говорится, на ровном месте. Давайте рассмотрим один из таких случаев. А именно, когда использование инициализатора объекта приводит к некорректному поведению программы.

Читать дальше...