Asynchronous C++: The Complete Guide
300 pages
English
PDF
4.5

Asynchronous C++: The Complete Guide

Asynchronous C++: The Complete Guide

Author:

Year:

Summary:

Modern C++ is not only about speed, but also about the ability to efficiently manage concurrency. The book "Asynchronous C++: A Complete Guide" is dedicated to one of the most complex yet in-demand aspects of the language — asynchronous programming. The author, Dmitry Volnov, an engineer with 15 years of experience developing high-load systems, systematically covers the topic from basic concepts to industrial solutions.



What this book is about

The publication covers all key aspects of asynchronous development in C++20:

  • Coroutines — the new standard for asynchrony: co_await, co_yield, co_return, custom awaiters and promise types.
  • Futures and Promises — classic mechanisms: std::future, std::promise, std::async, as well as their extensions (std::shared_future, std::packaged_task).
  • Threads and Thread Pools — managing std::thread, creating custom pools, load balancing.
  • Synchronization — mutexes, condition_variables, atomic operations, lock-free data structures.
  • Reactive Programming — wrappers over callbacks, event-driven architecture, the Boost.Asio library.
  • Design Patterns — Producer-Consumer, Reactor, Proactor, Pipeline, Thread Pool with Work Stealing.


Who this book is for

The book is intended for middle and senior C++ developers who are already proficient in C++17/20 and want to:

  • Improve the performance of their applications through asynchronous I/O.
  • Master modern coroutines and get rid of "callback hell".
  • Build a reliable multithreaded architecture without race conditions and deadlocks.
  • Prepare for an interview at a company that values a deep understanding of concurrency.


What you will learn

  • How to properly design asynchronous interfaces using coroutines.
  • The difference between std::async and manual thread management.
  • How to avoid common mistakes: non-blocking waits, resource leaks, queue overload.
  • How to integrate asynchronous code with existing synchronous libraries.
  • How to test and debug asynchronous applications (tracing, logging, profiling).
  • How to use Boost.Asio for network programming and creating custom protocols.


Each chapter contains practical examples with complete code, ready to compile and run. At the end of the book, there is a chapter analyzing a real project: an asynchronous HTTP server using coroutines.



The book will be useful for game developers (UI, network interactions), as well as engineers in financial systems, telecommunications, and any other fields where application responsiveness is critical.



Get your copy of "Asynchronous C++: A Complete Guide" and make your code faster, cleaner, and more scalable.

Recommendations