This thread queue executes at maximum N Runnables in parallel
were N is a given number of worker threads that should be used.
If N threads are running and busy each further incoming
Runnable is queued until one of the threads has finished its current job.
If a worker thread becomes idle (no more job in the queue)
it is hold alive for 5 seconds.