Продуктивність C# коду і питання його оптимізації
Мета цього вебінару – познайомити учасників з концепціями продуктивності і методами її вимірювання. Розглянемо випадки, коли оптимізація є необхідною, а коли лише завдасть шкоди. Подивимось, як уникнути проблемних сценаріїв при роботі з колекціями і LINQ та асинхронними I/O операціями. Розглянемо користь і шкоду типів значень, а також зупинимось на деяких сценаріях переносу роботи на стек. Наостанок розглянемо базові можливості для пулінгу пам'яті.
План вебінару:
- Що таке продуктивність, чому вона важлива та як не потрапити в пастку передчасної оптимізації.
- Як дізнатися про продуктивність написаного C# коду під час розробки за допомогою BenchmarkDotNet.
- Як уникнути зайвого виділення пам`яті у колекціях та під час використання LINQ.
- Прискорення асинхронних I/O операцій.
- Як позбутися сценаріїв ненавмисного копіювання даних у пам`яті.
- ArrayPool<T> і перевикористання буферів пам`яті.
- Перенесення роботи на stack.
Цільова аудиторія:
Вебінар буде цікавий тим, хто вже має базові знання мови програмування C#, досвід використання колекцій, операцій введення/виведення та LINQ і бажає їх поглибити, а також навчитись новим технікам вимірювання продуктивності та вирішення проблем з продуктивністю у своєму коді.
Умови участі: безкоштовно. Для отримання запрошення на онлайн-трансляцію заповніть реєстраційну форму.