implement job_pool