- Сен
- 178.105
- 648.521
Platinum
Администратор
Складчина: C#: Разговоры о многопоточности без воды [Stepik] [Сергей Камянецкий]
Практический курс по многопоточности и параллельному программированию в C#/.NET. От Thread и lock до PLINQ и потокобезопасных коллекций. Реальные примеры и паттерны для высокопроизводительных приложений.
О курсе:
Этот практический курс по многопоточности и параллельному программированию в C#/.NET создан для разработчиков, которые хотят освоить создание высокопроизводительных приложений. Вы изучите полный спектр инструментов: от базовых Thread и lock до современных PLINQ и потокобезопасных коллекций. Каждая тема подкреплена практическими примерами с разбором типичных ошибок и способов их избежать.
Особенность курса - пошаговое изучение от простых концепций к сложным паттернам с глубоким пониманием принципов работы. Вы освоите синхронизацию через Monitor и CancellationToken, научитесь правильно использовать Parallel.For с обработкой исключений, разберете стратегии PLINQ (WithMergeOptions, ForAll), изучите все типы concurrent коллекций и их применение.
Знание материала курса позволит вам с лёгкостью проходить технические собеседования на позиции middle/senior C# developer - многопоточность является одной из ключевых тем интервью для опытных разработчиков.
Для кого этот курс:
Курс предназначен для C# разработчиков уровня junior/middle, которые готовятся к техническим собеседованиям на позиции middle/senior developer и хотят уверенно отвечать на вопросы по многопоточности. Если вы когда-либо получали вопросы про Race Conditions, Deadlock'и, примитивы синхронизации или PLINQ на интервью и чувствовали себя неуверенно - этот курс для вас.
Начальные требования:
Уверенное знание языка C#.
Чему вы научитесь:
Создавать и управлять потоками с помощью 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 системы.
Управлять жизненным циклом потоков и ресурсов.
Как проходит обучение:
Курс состоит из небольших видеоуроков (всего их 86) с детальным текстовым сопровождением - каждая тема включает примеры кода и пошаговые объяснения принципов работы многопоточности. После изучения материала вы проходите тесты на понимание концепций и выполняете практические задания - пишете код.
Программа:
Начало
Основы многопоточности
Синхронизация потоков
Продвинутая синхронизация
Управление жизненным циклом потоков
Task и асинхронное программирование
Async/Await паттерн
Параллельное программирование
Окончание
Спойлер: Подробно
1. Начало:
Добро пожаловать на курс!
Давайте знакомиться!
2. Основы многопоточности:
Пример с выводом информации о главном и вторичном потоках.
Пример параллельного запуска рабочих потоков.
Создание потоков с разными приоритетами, фоновым флагом и именам.
Замер производительности способов подсчёта суммы массива.
Самостоятельная работа: сложение матриц.
Самостоятельная работа: веб-сервис.
3. Синхронизация потоков:
Введение в гонку потоков и критическая секция.
Самостоятельная работа: система брони билетов.
Введение в Monitor.
Самостоятельная работа: билеты на мониторе.
Проблемы межпроцессного взаимодействия и Mutex.
ReaderWriterLockSlim.
4. Продвинутая синхронизация:
Проблема ресурсов: Semaphore и SemaphoreSlim.
Сигнальные объекты.
Состояние потоков и взаимная блокировка.
5. Управление жизненным циклом потоков:
Возврат результата из вторичного потока.
Остановка вторичного потока.
Пул потоков.
Самостоятельная работа: обновление сервера.
ThreadPool.RegisterWaitForSingleObject.
Обработка ошибок в многопоточном приложении.
6. Task и асинхронное программирование:
Асинхронность и Task: первые шаги.
Самостоятельная работа: переезд на Task.
Продолжение выполнения с ContinueWith.
Самостоятельная работа: ContinueWith.
Unwrap.
Обработка исключений в Task.
Самостоятельная работа: переезд Thread → Task.
Отмена Task через CancellationTokenSource.
7. Async/Await паттерн:
Волшебные async/await.
Синтаксис async/await и контекст потока.
Ошибки await Task.WhenAll.
8. Параллельное программирование:
Упоминание о Parallel.
Parallel LINQ.
Потокобезопасные коллекции.
Техническое задание: потокобезопасная очередь.
BlockingCollection.
Техническое задание: использование BlockingCollection.
9. Окончание
Автор Сергей Камянецкий
Создёт практические курсы по C# и микросервисной архитектуре. Помогет разработчикам переходить с junior на middle/senior уровень через реальные задачи и code review. Программист, наставник, популяризатор программирования.
Backend-разработчик и автор курсов по C# и микросервисной архитектуре. Помогаю junior и middle разработчикам переходить на новый уровень через практику и реальные проекты.
Цена 6500 руб.
СЛИВЫ КУРСОВ
Практический курс по многопоточности и параллельному программированию в C#/.NET. От Thread и lock до PLINQ и потокобезопасных коллекций. Реальные примеры и паттерны для высокопроизводительных приложений.
О курсе:
Этот практический курс по многопоточности и параллельному программированию в C#/.NET создан для разработчиков, которые хотят освоить создание высокопроизводительных приложений. Вы изучите полный спектр инструментов: от базовых Thread и lock до современных PLINQ и потокобезопасных коллекций. Каждая тема подкреплена практическими примерами с разбором типичных ошибок и способов их избежать.
Особенность курса - пошаговое изучение от простых концепций к сложным паттернам с глубоким пониманием принципов работы. Вы освоите синхронизацию через Monitor и CancellationToken, научитесь правильно использовать Parallel.For с обработкой исключений, разберете стратегии PLINQ (WithMergeOptions, ForAll), изучите все типы concurrent коллекций и их применение.
Знание материала курса позволит вам с лёгкостью проходить технические собеседования на позиции middle/senior C# developer - многопоточность является одной из ключевых тем интервью для опытных разработчиков.
Для кого этот курс:
Курс предназначен для C# разработчиков уровня junior/middle, которые готовятся к техническим собеседованиям на позиции middle/senior developer и хотят уверенно отвечать на вопросы по многопоточности. Если вы когда-либо получали вопросы про Race Conditions, Deadlock'и, примитивы синхронизации или PLINQ на интервью и чувствовали себя неуверенно - этот курс для вас.
Начальные требования:
Уверенное знание языка C#.
Чему вы научитесь:
Создавать и управлять потоками с помощью 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 системы.
Управлять жизненным циклом потоков и ресурсов.
Как проходит обучение:
Курс состоит из небольших видеоуроков (всего их 86) с детальным текстовым сопровождением - каждая тема включает примеры кода и пошаговые объяснения принципов работы многопоточности. После изучения материала вы проходите тесты на понимание концепций и выполняете практические задания - пишете код.
Программа:
Начало
Основы многопоточности
Синхронизация потоков
Продвинутая синхронизация
Управление жизненным циклом потоков
Task и асинхронное программирование
Async/Await паттерн
Параллельное программирование
Окончание
Спойлер: Подробно
1. Начало:
Добро пожаловать на курс!
Давайте знакомиться!
2. Основы многопоточности:
Пример с выводом информации о главном и вторичном потоках.
Пример параллельного запуска рабочих потоков.
Создание потоков с разными приоритетами, фоновым флагом и именам.
Замер производительности способов подсчёта суммы массива.
Самостоятельная работа: сложение матриц.
Самостоятельная работа: веб-сервис.
3. Синхронизация потоков:
Введение в гонку потоков и критическая секция.
Самостоятельная работа: система брони билетов.
Введение в Monitor.
Самостоятельная работа: билеты на мониторе.
Проблемы межпроцессного взаимодействия и Mutex.
ReaderWriterLockSlim.
4. Продвинутая синхронизация:
Проблема ресурсов: Semaphore и SemaphoreSlim.
Сигнальные объекты.
Состояние потоков и взаимная блокировка.
5. Управление жизненным циклом потоков:
Возврат результата из вторичного потока.
Остановка вторичного потока.
Пул потоков.
Самостоятельная работа: обновление сервера.
ThreadPool.RegisterWaitForSingleObject.
Обработка ошибок в многопоточном приложении.
6. Task и асинхронное программирование:
Асинхронность и Task: первые шаги.
Самостоятельная работа: переезд на Task.
Продолжение выполнения с ContinueWith.
Самостоятельная работа: ContinueWith.
Unwrap.
Обработка исключений в Task.
Самостоятельная работа: переезд Thread → Task.
Отмена Task через CancellationTokenSource.
7. Async/Await паттерн:
Волшебные async/await.
Синтаксис async/await и контекст потока.
Ошибки await Task.WhenAll.
8. Параллельное программирование:
Упоминание о Parallel.
Parallel LINQ.
Потокобезопасные коллекции.
Техническое задание: потокобезопасная очередь.
BlockingCollection.
Техническое задание: использование BlockingCollection.
9. Окончание
Автор Сергей Камянецкий
Создёт практические курсы по C# и микросервисной архитектуре. Помогет разработчикам переходить с junior на middle/senior уровень через реальные задачи и code review. Программист, наставник, популяризатор программирования.
Backend-разработчик и автор курсов по C# и микросервисной архитектуре. Помогаю junior и middle разработчикам переходить на новый уровень через практику и реальные проекты.
Цена 6500 руб.
СЛИВЫ КУРСОВ
Для просмотра скрытого содержимого вы должны зарегистрироваться
Возможно, Вас ещё заинтересует:
- [Вязание] Схема вязания игрушки ангел Ловентин [dailydoll.shop]
- Дизайн мобильных приложений [Spreent Academy] [Артур Абдуллин]
- Схема вязания игрушки волк Банди [dailydoll.shop]
- Схема вязания игрушки лис Фрэнки [dailydoll.shop]
- Обучение расчету и проектированию фундаментов за 3 месяца [Артем Крылов, Григорий Белугин]
- Трафик и нейросети 2026 [Тариф Вип] [Владимир Сургай]