[Feature] 将Deferred中的when拆分出来