Открыто

C#: Разговоры о многопоточности без воды [Stepik] [Сергей Камянецкий]

Тема в разделе "Курсы по программированию", создана пользователем Топикстартер, 12 апр 2026 в 00:10.

Основной список: 4 участников

  1. 12 апр 2026 в 00:10
    #1
    Топикстартер
    Топикстартер ЧКЧлен клуба

    Складчина: C#: Разговоры о многопоточности без воды [Stepik] [Сергей Камянецкий]

    Снимок экрана 2026-04-12 в 00.45.png

    Этот практический курс по многопоточности и параллельному программированию в 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) с детальным текстовым сопровождением - каждая тема включает примеры кода и пошаговые объяснения принципов работы многопоточности. После изучения материала вы проходите тесты на понимание концепций и выполняете практические задания - пишете код.
    Программа:
    1. Начало
    2. Основы многопоточности
    3. Синхронизация потоков
    4. Продвинутая синхронизация
    5. Управление жизненным циклом потоков
    6. Task и асинхронное программирование
    7. Async/Await паттерн
    8. Параллельное программирование
    9. Окончание
    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 руб.
    Скрытая ссылка
     
    Последнее редактирование модератором: 12 апр 2026 в 16:44
    1 человеку нравится это.
  2. Последние события

    1. jjjmark
      jjjmark участвует в складчине.
      13 апр 2026 в 19:21
    2. MariaChe
      MariaChe участвует в складчине.
      12 апр 2026 в 18:04
    3. Aaaaa1
      Aaaaa1 участвует в складчине.
      12 апр 2026 в 11:26
    4. rar24
      rar24 участвует в складчине.
      12 апр 2026 в 07:58