Чему вы научитесь
- Разберетесь с основными понятиями тематики курса: многопоточностью, конкурентностью, асинхронностью и параллелизмом
- Изучите устройство и особенности работы с потоками исполнения (Thread) и пулом потоков (ThreadPool) в C#
- Научитесь использовать конструкции синхронизации пользовательского режима (Interlocked, SpinLock, SpinWait), режима ядра (Mutex, Semaphore, AutoResetEvent, ManualResetEvent) и гибридные конструкции (Monitor / lock, SemaphoreSlim и др.)
- Освоите современный подход к асинхронной разработке на C#, познакомитесь с классом Task, узнаете как запускать асинхронные задачи
- Глубоко изучите паттерн TAP (Task-based asynchronous pattern): работу с исключениями в задачах, жизненный цикл задачи, требования к методам, реализующим асинхронные операции
- Детально изучите работу с async/await, в том числе то, как на уровне компилятора осуществляется подготовка кода для реализации асинхронного режима работы
- Разберетесь с темой параллелизма в C#: работа с Task Parallel Library (TPL) и PLINQ
- Узнаете как создавать асинхронные потоки (IAsyncEnumerable<T>), работать с неизменяемыми и конкурентными коллекциями
О курсе
Для кого этот курс
Начальные требования
Для успешного освоения материала требуется: уверенное знание языка C# и понимание базовых принципов объектно-ориентированного программирования (ООП). Хорошо, если у вас есть опыт работы с задачами (Task), и вы знакомы с асинхронным программированием на базовом уровне (например, вы уже использовали async/await в реальных задачах).
Преподаватели курса
Как проходит обучение
Курс состоит из семи модулей, охватывающих ключевые темы многопоточности, асинхронности и параллелизма в C# и .NET. Каждый модуль построен вокруг конкретной практической темы. В модуле от пяти до семи уроков, каждый из которых включает структурированный теоретический материал с объяснением концепций, примерами кода и демонстрацией практических кейсов.
В конце каждого модуля вас ждет урок "Решение задач". Он содержит задачи на программирование разного уровня сложности, которые помогут закрепить знания и научиться применять изученные технологии на практике.
Сертификат
Что вы получите
- Глубокое понимание темы конкурентности в C#: разберётесь с async/await, Task Parallel Library (TPL), PLINQ, паттерном TAP (Task-based asynchronous pattern), конструкциями синхронизации и многим другим
- Практические навыки: научитесь применять знания в различных сценариях
- Доступ к сообществу и поддержке: сможете задать вопросы в комментариях и получить помощь от команды Devpractice и других студентов
- Базу для роста и экспертности: курс даст не просто знания, а понимание «как это работает», необходимое для построения высоконагруженных, надёжных и масштабируемых систем в экосистеме .NET
- Портфолио решений типовых задач: по мере прохождения курса вы соберете коллекцию реализованных паттернов и подходов, которые можно использовать в реальных проектах
- Возможный карьерный рост: знания об асинхронности и параллелизме являются обязательными для уровня middle/middle+/senior разработчика