improve of taskprocessorimpl