Skip to content

akshay-dandekar/threadpool

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Thread pool library

Architecture of threadpool

Every threadpool is represented by a structure 'struct threadpool'
To create a new threadpool, call threadpool_create function.
This function will perform following operations
	- allocate memory for threadpool structure
	- initialize different lists maintained by the threadpool
		(threads_available, threads_busy, tasks)
	- init mutex and conditional variable used to syncronize all threadpool 
	  specific operations
	- create a manager thread to manage threadpool operations
	- create worker threads, init their own mutex and conditional variables and 
	  add them (created threads) to threads_available list

Following are members of the structure
	- threads_available
		Threads that are available to accept new tasks
It has a list of worker threads available to accept new tasks


        | Threadpool (struct threadpool)
		| - Worker Threads (struct threadpool_thread)

About

A simple threadpool implementation using C

Resources

License

Stars

Watchers

Forks

Packages

No packages published