R
R
RyukieDev
GitHub
AppStore
逆向
Search
⌃
K
Links
关于我-AboutMe
我的作品-MyApps
独立开发
Swift
01.纯Swift路由方案探究
02.使用Carthage替代CocoaPods
03.逃逸闭包和非逃逸闭包
04.向下向上取整
05.Copy-on-write
06.OC老项目Swift混编的一些坑
07.OC项目中加入Swift混编
08.Optional实质
09.R-Swift-安全的资源组织方案forSwift
10.Struct与Class
11.Swift5新特性
12.Swift性能分析
13.SwiftPackage使用
14.String与Substring
15.Array,Set,Dictionary
16.For-in跳跃遍历
17.Switch元祖
18.循环的标签控制
19.Protocol与静态派发、动态派发
20.Swift位移枚举
21.Swift轻量级网络封装:SwiftyServiceProtocol(适用于混编或纯Swift项目)
22.open与public
23.Swift项目编译速度优化
24.[译]编写高性能Swift代码-Writing High-Performance Swift Code(2022.8.25版)
25.Swift编译流程
26.Swift方法调度
SwiftUI
DeepLearning
iOS
逆向
Flutter
网络
直播技术
知识点梳理
Framework
Issue
OpenGL ES
数据结构与算法
Powered By
GitBook
Comment on page
03.逃逸闭包和非逃逸闭包
逃逸闭包_@escaping
一个接受一个闭包作为参数的函数,如果参数需要在函数结束之后才被调用
也就是闭包脱离了函数的作用域
非逃逸闭包_@noescape
一个接受一个闭包作为参数的函数,闭包会在函数结束前被调用
非逃逸闭包
内存管理
非逃逸闭包不会存在循环引用,因为在函数作用域内就释放了
开发中使用非逃逸闭包有利于内存优化
自动逃逸
注意
当闭包被当做参数,包裹在其他类型中(元祖/枚举/case/Optional可选型)中会自动逃逸
Previous
02.使用Carthage替代CocoaPods
Next
04.向下向上取整
Last modified
2yr ago