parallelize scheduler tasks, add appropriate blocking