Chapter 8. Multiprocessing
In this chapter, we will look at the wonders of multiprocessing in Python, and how it can answer the question of how to achieve truly parallel execution in Python.
We'll take a look at a number of topics such as the following:
- How multiprocessing allows us to eliminate the impact of the GIL
- The life of the processes in Python--how to spin up child processes, identify these processes, and ultimately kill them when we no longer need them
- How to utilize the multiprocessing pool API
- Communication and Synchronization between our multiple processes
By the end of this chapter, you will be quite comfortable writing your own programs that leverage the true parallel power of multiple processes.
Note
Thankfully, for those of you still stuck in the past, most of the concepts we are going to cover in this chapter are indeed available in Python 2.7. The multiprocessing module was introduced in version 2.6.