a thread pool implementation based on  "Multi-threaded Programming Guide" from Oracle.