5 Interprocess communication

In this chapter:

  • You learn how to achieve effective task communication
  • You learn how to choose a communication type for your applications
  • You learn a popular programming pattern for creating concurrent applications: a thread pool

We can’t always guarantee that concurrent tasks running on a computer are independent. Often, communication between tasks is necessary for efficient execution. For example, if one task depends on the result of another, the application has to know when to pause its work while it waits for the other task to finish.

Communication is therefore at the heart of any concurrent system. If we cannot ensure proper communication between tasks, the performance gains from concurrency are meaningless. ...

Get Grokking Concurrency 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.