In this chapter, we discussed how to program threads using both POSIX and C++ APIs. We then discussed three examples. The first example demonstrated how to use threading to perform a parallel computation, while the second demonstrated how to create your own high-resolution timer using threading to perform benchmarking.
Finally, the third example built upon our existing debugging example to provide support for multiple clients. The next, and final, chapter will discuss the error handling features provided by C and C++, including C style error handling and exceptions.