Шаблоны кода на CSharp, которых следует избегать¶
- Синхронно ждать асинхронный код;
- async void;
- Ненужный return await;
- Использование
ConcurrentBag<T>— тормозит; стараемся использоватьConcurrentQueue<T>; - Использование
ReaderWriterLock<T>илиReaderWriterLockSlim<T>— тормозит. Лучше использоватьMonitorпод lock-ом; - Избегать MethodGroup для статических методов;
- Делать Enum.Equals;
- Использовать дефолтные методы сравнения в структурах;
- Использовать структуры в интерфейсах;
- Регистрировать долгие таски в CancelTokenSource;
- Не использовать параметр
TaskCreationsOptions.RunContinuationsAsynchronouslyпри использованииTaskCompletionSource; - Использовать
Task.Factory.StartNewбез причины;
Ссылки¶
https://kevingosse.medium.com/performance-best-practices-in-c-b85a47bdd93a
Последнее обновление :
9 июля 2023 г.
Дата создания : 1 августа 2022 г.
Дата создания : 1 августа 2022 г.