Një thread pool është një set fiks thread-esh worker të riperdorshëm që tërheqin detyra nga një work queue e ndarë. Shmang koston e krijimit të një thread për detyrë dhe kufizon numrin e thread-eve konkurrentë.
Pse ta përdorësh
Krijimi dhe shkatërrimi i thread-eve është i shtrenjtë (alokim stack-u, setup i scheduling-ut të OS), dhe krijimi i pakufizuar i thread-eve shteron memorien dhe shkakton thrashing të context-switch. Një pool e amortizon koston e krijimit dhe e kufizon konkurrencën.
detyra → [ work queue ] → worker 1
worker 2 (N worker fiks tërheqin & ekzekutojnë)
worker 3
