Everything About ___
Live briefing

Everything about Thread pool

Software design pattern

In computer programming, a thread pool is a software design pattern for achieving concurrency of execution in a computer program. Often also called a replicated workers or worker-crew model, a thread pool maintains multiple threads waiting for tasks to be allocated for concurrent execution by the supervising program. By maintaining a pool of threads, the model increases performance and avoids latency in execution due to frequent creation and destruction of threads for short-lived tasks. Another good property - the ability to limit system load, when we use fewer threads than available. The number of available threads is tuned to the computing resources available to the program, such as a parallel task queue after completion of execution. Wikipedia →

đź§­ Start here: a 6-step reading path

  1. Read the overview: Thread poolA 5-minute orientation
  2. Skim a recent paper: MODIFICATION OF A THREAD POOL ALGORITHM WITH MULTIPLE TASK QUEUESInfluential work since 2022
  3. Pick up a classic book: The Hound of the BaskervillesThe most-reprinted book on the subject
  4. Read the landmark paper: Analysis of optimal thread pool sizeCited 53 times
  5. Go sideways: Object pool patternA closely related topic
  6. Go sideways: Channel (programming)A closely related topic

đź“– Definitions

Noun A pool of threads of execution created to perform a number of tasks.

🗂️ The subject at a glance

  1. Performance
  2. In languages

🏆 Landmark papers (most cited)

🆕 Influential since 2022

📚 Books worth reading

Ranked by number of editions on Open Library, a rough measure of how lasting a book is.

đź”— Related topics