use fixed threadpool instead of unlimited poolsize