更新api，完善闭包调用和递归调用情况下的处理