Конкурентность в C# (.NET): асинхронность, параллелизм и многопоточность — Алексей Смирнов — обложка книги
300 страниц
C# (.NET)
PDF
4.5

Конкурентность в C# (.NET): асинхронность, параллелизм и многопоточность

Практическое руководство по построению быстрых и отказоустойчивых .NET-приложений

Автор:

Год:

Краткое содержимое:

Современные приложения редко работают в однопоточном режиме. Скорость отклика, масштабируемость и эффективное использование ресурсов напрямую зависят от умения разработчика грамотно выстраивать конкурентные процессы. Книга «Конкурентность в C# (.NET)» — это полноценное руководство, которое поможет вам освоить все аспекты параллельного и асинхронного программирования в экосистеме .NET.

Автор последовательно раскрывает тему: от базовых понятий (потоки, задачи, синхронизация) до продвинутых техник (каналы, потоки данных, реактивные расширения). Вы научитесь избегать типичных ошибок — deadlock’ов, race condition и перегрузки пула потоков.

Что вы узнаете из книги:

  • Основы конкурентности — чем отличаются многопоточность, асинхронность и параллелизм, когда что применять.
  • Task и async/await — глубокое погружение в модель TAP (Task-based Asynchronous Pattern), работа с CancellationToken и ValueTask.
  • Потоки и пул потоков — управление ThreadPool, создание фоновых и foreground-потоков, локальные данные потока.
  • Синхронизация — lock, Monitor, SemaphoreSlim, ReaderWriterLock, барьеры и spin-блокировки.
  • Параллельные коллекции — ConcurrentDictionary, ConcurrentQueue, BlockingCollection, Channel для producer-consumer.
  • Parallel LINQ и TPL — распараллеливание запросов, Parallel.For/ForEach, управление степенью параллелизма.
  • Реактивное программирование — System.Reactive (Rx.NET), обработка потоков событий и данных.
  • Отладка и профилирование — инструменты Visual Studio, диагностика гонок, утечек и взаимоблокировок.
  • Продвинутые сценарии — Dataflow (ActionBlock, TransformBlock), IAsyncEnumerable, асинхронные потоки в C# 8+.

Для кого эта книга:

  • Разработчиков на C#, которые хотят писать быстрые и отзывчивые приложения.
  • Backend-инженеров, работающих с ASP.NET Core и высоконагруженными сервисами.
  • Специалистов, переходящих с синхронного кода на асинхронный и желающих избежать подводных камней.
  • Тех, кто готовится к собеседованиям на позиции Senior .NET Developer.

Книга содержит множество реальных примеров, готовых к использованию в проектах. Каждая глава завершается практическими заданиями и вопросами для самопроверки. Вы не просто прочитаете теорию — вы научитесь проектировать конкурентные системы, которые работают стабильно и эффективно.

«Конкурентность в C# (.NET)» — это настольная книга для каждого .NET-разработчика, стремящегося к профессиональному росту. Независимо от того, пишете ли вы десктопное приложение, веб-сервис или облачную функцию, знания из этой книги помогут вам сделать код быстрее, безопаснее и понятнее.

Рекомендаций