Use thread pool to ensure that we won't have tons of dead threads