Modern C++ Concurrency – Now on Pluralsight!

My latest Pluralsight course is now available: Modern C++ Concurrency

This course is about the practical application of the modern C++ language to the field of concurrency or concurrent programming.

Need more convincing? This course will introduce you to modern C++ concurrency on the Windows operating system. Unfortunately, standard or portable concurrency is still in its infancy so a comprehensive study of concurrency cannot get away from the practical and platform-specific aspects of the craft. As such, this course uses the Windows operating system as the playground to explore concurrency in C++. This course will prepare you with a deep understanding of threads and synchronization at the OS level, including modern synchronization primitives such as slim reader/writer locks and condition variables. You will learn all about the mighty Windows thread pool API and the Concurrency Runtime. Finally, you will be introduced to some of the shortcomings that plague the C++11 Thread Support Library.

Go and watch it now!

If you’d like to follow along you can download the exercise files or simply grab handle.h and debug.h from

Have you missed one of my previous courses? Master the essentials of COM, DirectX with C++, and even C programming!

7 thoughts on “Modern C++ Concurrency – Now on Pluralsight!

  1. Peter Evans

    Good information on threads and thread pools in windows and coordination objects in windows. I would have like to see more examples of what is broken in the current c11 standards and c14 standards library and why to stay away from them. Also an I/O completion port session and the thread pool would be nice, especially if modernized for windows 8.1. I believe a lot has changed since Windows vista time frame.

  2. R

    Hi Kenny. In your c++ com course you specify that we should use WRL instead of ATL in the future for writing com components (classic desktop). What do you suggest for writing native gui applications for desktop (not metro) as to have no dependence on ATL or WTL.

  3. Pavan

    Hi Kenny,

    I was going through the Modern C++ Libraries course on pluralsight and in your “Trace demo” i see that you have declared the m_filename as const char * and passing it to swprintf_s function which actually expects a const wchar_t* for its third parameter . my compiler (visual studio 2015) throws a warning about this and when i try to execute the code, my debugger output shows some junk characters in the place of my file name. i tried to look online on how i can work around this but couldnt find a solution that works. can you please help resolve my issue?


    1. Kenny Kerr Post author

      Hi Pavan,

      The wide character versions of printf are non-standard on Visual C++. I suggest you stick with printf/sprintf and that have since been improved considerably in Visual C++. So the format strings would be a char* and params can be either char* (%s) or wchar_t* (%ls).

      Hope that helps.



Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s