@escaping 的作用

在阅读 Swift 代码时候,我们可以看到在方法中的有些 Closure 参数被声明为 @escaping,那么它的作用具体是做什么的?它和 @nonescaping 有什么区别?

版本更新历史

在 Swift 3.0 之前,方法中的参数默认为 @escaping,而在 Swift 3.0 之后,则修改默认修饰为 @nonescaping,你可以在这里看到相关提案 0103-make-noescape-default.md

继续阅读“@escaping 的作用”