Skip to content

A C++ project demonstrating the Thread Pool pattern for efficient concurrency. This program intelligently distributes threads equally among the heavy tasks, allowing for concurrent execution and optimized CPU utilization.

License

Notifications You must be signed in to change notification settings

BardiParsi/ThreadPool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Thread Pool Concurrency Pattern in C++

A C++ project demonstrating the Thread Pool pattern for concurrency.

Introduction

This project showcases a C++ implementation of the Thread Pool pattern, a concurrency design pattern used for managing and executing multiple tasks concurrently by efficiently distributing them among a fixed number of threads. The program smartly distributes threads equally among the heavy tasks to implement them concurrently, thus optimizing resource utilization and enhancing overall performance.

Features

  • Thread Pool Pattern: Efficiently manages multiple heavy tasks by distributing them among a fixed number of threads.
  • Concurrency: Implements heavy tasks concurrently, optimizing resource utilization.
  • Smart Thread Distribution: Equally distributes threads among the heavy tasks, ensuring efficient task execution.

Requirements

  • C++20 or above
  • This project is tested and compatible with the following compilers:
    • Mingw g++
    • Microsoft Visual C++ (MSVC)

Usage

  1. Clone the repository:
    git clone https://github.com/BardiParsi/ThreadPool.git
  2. Build the project using a C++20 compiler.
  3. Run the executable.

Contributing

Contributions are welcome! Fork the repository, make your changes, and submit a pull request.

License

This project is licensed under the General License - see the LICENSE file for details.

Contact

Let me know if you need further assistance! email: farsi.masoud@gmail.com

About

A C++ project demonstrating the Thread Pool pattern for efficient concurrency. This program intelligently distributes threads equally among the heavy tasks, allowing for concurrent execution and optimized CPU utilization.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages