I don't think this helps, because as long as the number of available threads is smaller the number of core threads, the executor will create new threads for each submitted task.