In this chapter, we'll take care of threads and all the stuff connected with them. Basic knowledge of multithreading is encouraged.
Multithreading means multiple threads of execution exist within a single process. Threads may share process resources and have their own resources. Those threads of execution may run independently on different CPUs, leading to faster and more responsible programs. The Boost.Thread
library provides unification across operating system interfaces to work with threads. It is not a header-only library, so all the examples from this chapter need to link against the libboost_thread
and libboost_system
libraries.