Skip to content

gogabr/threadpool

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

A simple C thread pool implementation
=====================================

Currently, the implementation:
 * Works with pthreads only, but API is intentionally opaque to allow
   other implementations (Windows for instance).
 * Starts all threads on creation of the thread pool.
 * Reserves one task for signaling the queue is full.
 * Stops and joins all worker threads on destroy.

Possible enhancements
=====================

The API contains addtional unused 'flags' parameters that would allow
some additional options:

 * Lazy creation of threads (easy)
 * Reduce number of threads automatically (hard)
 * Unlimited queue size (medium)
 * Kill worker threads on destroy (hard, dangerous)
 * Support Windows API (medium)
 * Reduce locking contention (medium/hard)

About

A simple C Thread pool implementation

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 95.7%
  • Makefile 4.3%