In my classes of parallel programming the teacher mentioned three models, dynamic thread creation (create threads according to demand), thread pool (create a fixed amount of threads) and mixed or hybrid (create a number of threads at first, but you can create more if the demand increases too much and then return to the previous amount of threads when demand returns to normal)
I would like if someone could elaborate on the advantages and disadvantages of each model in general terms of performance, when it is best to use one in specific, etc...