Chapter 19. Multithreaded Programming

As discussed in Chapter 16, a number of different multiprocessor hardware platforms are in widespread production use today. Traditional software design, however, is based on processes containing a single set of instructions designed to execute in a serial order. Such so-called single-threaded software cannot take advantage of more than one CPU at a time to increase execution speed and performance. By contrast, multithreaded code is designed to contain multiple sequences of instructions that can execute in parallel. Besides using multiprocessors more efficiently to increase application performance, multithreading can also lead to improved program structure when correctly implemented. For example, system-oriented ...

Get Software Development: Building Reliable Systems now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.