Книга: «C# Concurrency. Асинхронное программирование и многопоточность»

0 8

Книга: «C# Concurrency. Асинхронное программирование и многопоточность»

Асинхронные и многопоточные программы могут выполнять несколько задач одновременно, не теряя скорости или надежности. Но правильная организация параллельного выполнения может вызвать затруднения даже у опытных разработчиков. Эта практическая книга научит вас создавать параллельные приложения на C#, работающие с максимальной скоростью и не имеющие взаимоблокировок и других проблем синхронизации, которые ухудшают производительность и требуют огромных усилий для их обнаружения.

«C# Concurrency» помогает получить полное представление об особенностях многопоточности и асинхронного программирования. В ней особое внимание уделено практическому использованию операторов async/await в C# для упрощения асинхронных задач. Вы научитесь избегать распространенных ошибок, обходить классические проблемы многопоточности, такие как состояния взаимоблокировки и гонки, а также узнаете о многих сложных нюансах управления потоками и использования потокобезопасных коллекций.

Что внутри книги?

  • Многопоточность в .NET и механизмы асинхронного программирования.

  • Когда следует и когда не следует использовать методы параллельного выполнения.

  • Многочисленные примеры использования async/await.

  • Для опытных программистов на C#. Знание асинхронного программирования не требуется.

    Кому адресована эта книга?

    Эта книга адресована всем разработчикам на C#, желающим получить дополнительные знания о многопоточном и асинхронном программировании. Информация в этой книге применима к любой версии .NET, .NET Core и .NET Framework, выпущенной после 2012 года, а также к Windows и Linux (но только для .NET Core и .NET 5 и более поздних версий, потому что более ранние версии не поддерживались в Linux).

    Основное внимание в издании уделяется разработке серверного программного кода, но кое-где затрагиваются также вопросы, касающиеся разработки приложений с графическим интерфейсом.

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

    Адаптация этого труда на русский язык — результат совместной работы команды энтузиастов, которые постарались не только локализовать книгу, но и сохранить техническую точность, избегая двусмысленности в формулировках. Мы стремились преодолеть языковой барьер и сделать информацию доступной для всех русскоязычных разработчиков, так или иначе связанных с .NET.

    Книга раскрывает не только TPL, взаимодействие с потоками и async/await, но и современные Frozen Collections. Мы постарались максимально сохранить, а где-то и расширить контекст рассматриваемых вопросов, чтобы улучшить ваш читательский опыт.

    Мы надеемся, что эта книга станет для вас ценным ресурсом — будь вы начинающий разработчик в процессе знакомства с concurrency или опытный инженер в поисках глубоких знаний и понимания этой области .NET.

  • Российское сообщество .NET разработчиков DotNetRu
  •  

    Об авторе

    Нир Добовицки (Nir Dobovizki) — архитектор программного обеспечения и старший консультант. Занимается разработкой параллельных и асинхронных систем (в основном для высокопроизводительных серверов) с конца 1990-х. Хорошо знаком с языками, компилирующимися в машинный код, а с момента появления .NET 1.1 в 2003 году использует .NET и язык C#. Работал с несколькими компаниями в медицинской, оборонной и промышленной отраслях, которым помогал решать проблемы, возникающие из-за неправильного использования многопоточного и асинхронного программирования.

     

    Структура издания

    Эта книга состоит из двух частей, которые разбиты на 14 глав.
    Часть I охватывает основы многопоточности и async/await в C#:

  • глава 1 знакомит с понятиями и терминологией многопоточного и асинхронного программирования;

  • глава 2 посвящена методам, которые использует компилятор .NET для реализации расширенной функциональности;

  • глава 3 — это глубокое погружение в работу async/await;

  • глава 4 объясняет суть многопоточности;

  • глава 5 связывает вместе все, о чем рассказывалось в главах 3 и 4, и демонстрирует связь async/await и многопоточности;

  • глава 6 рассказывает о том, когда следует использовать операторы async/await, потому что сам факт возможности их использования не означает, что они должны использоваться везде;

  • глава 7 завершает первую часть описанием распространенных ошибок в многопоточном программировании и, что еще важнее, приемов, помогающих их избежать.

  • Часть II посвящена практическому использованию информации, которую вы узнали в част и I:

  • глава 8 рассказывает об обработке данных в фоновом режиме;

  • глава 9 посвящена прерыванию обработки в фоновом режиме;

  • глава 10 учит создавать сложные асинхронные компоненты, которые делают больше, чем просто объединяют встроенные асинхронные операции;

  • в главе 11 обсуждаются продвинутые варианты использования async/await и потоков;

  • глава 12 поможет устранить проблемы с исключениями в асинхронном коде;

  • глава 13 посвящена потокобезопасным коллекциям;

  • глава 14 показывает, как создавать классы, работающие подобно асинхронным коллекциям

  •  

    Приобрести книгу «C# Concurrency. Асинхронное программирование и многопоточность» можно на нашем сайте.

    Источник

    Вам также могут понравиться
    Оставьте ответ