This is to guarantee that completion callbacks are always called, so if any resource collection happens in them it'll always happen.