fix: ensure no task can be executed on destroyed pool