Чему вы научитесь
- Создавать и управлять потоками с помощью Thread
- Применять синхронизацию через lock и Monitor для защиты общих ресурсов
- Использовать CancellationToken для корректной отмены долгих операций
- Обрабатывать исключения в многопоточной среде
- Различать назначение ConcurrentDictionary, ConcurrentQueue, ConcurrentStack, ConcurrentBag
- Сравнивать производительность обычных и concurrent коллекций
- Применять BlockingCollection для Producer-Consumer архитектур
- Анализировать компромиссы между безопасностью и скоростью
- Использовать Task и Task<T> для неблокирующих операций
- Применять основы async/await для упрощения асинхронного кода
- Комбинировать синхронный и асинхронный код
- Разрабатывать системы бронирования с конкурентным доступом
- Строить многопоточные математические вычисления (сложение матриц)
- Создавать Producer-Consumer системы для обработки данных
- Диагностировать и устранять Race Conditions и Deadlock'и
- Предотвращать гонки данных (Race Conditions)
- Правильно обрабатывать AggregateException в параллельном коде
- Корректно завершать Producer-Consumer системы
- Управлять жизненным циклом потоков и ресурсов
О курсе
Практический курс по многопоточности и параллельному программированию в C#/.NET. От Thread и lock до PLINQ и потокобезопасных коллекций. Реальные примеры и паттерны для высокопроизводительных приложений
Для кого этот курс
Курс предназначен для C# разработчиков уровня junior/middle, которые готовятся к техническим собеседованиям на позиции middle/senior developer и хотят уверенно отвечать на вопросы по многопоточности.
Если вы когда-либо получали вопросы про Race Conditions, Deadlock'и, примитивы синхронизации или PLINQ на интервью и чувствовали себя неуверенно - этот курс для вас.
Начальные требования
Уверенное знание языка C#
Преподаватели курса
Как проходит обучение
Курс состоит из небольших видеоуроков (всего их 86) с детальным текстовым сопровождением - каждая тема включает примеры кода и пошаговые объяснения принципов работы многопоточности. После изучения материала вы проходите тесты на понимание концепций и выполняете практические задания - пишете код
Сертификат
Успешно завершив курс, вы получите сертификат от платформы Stepik. Уже 37 учеников получили сертификат.
Что вы получите
- Уверенность на технических собеседованиях
- ManualResetEventSlim
- Producer-Consumer архитектуры
- Thread
- lock
- Monitor
- Parallel
- PLINQ
- потокобезопасные коллекции
- Race Conditions
- Deadlock
- Пправильная обработка исключений
- Task
- async/await
- CancellationToken
- Карьерный рост в .NET
- SemaphoreSlim
- и др.