【发布时间】:2018-08-25 08:37:38
【问题描述】:
有questions与这个类似,我了解到,使用回调函数的完成处理程序,块只是匿名函数或闭包
block 和 completion handler 的示例
class func scheduledTimer(withTimeInterval interval: TimeInterval,
repeats: Bool,
block: @escaping (Timer) -> Void) -> Timer
func startUpdates(from start: Date,
withHandler handler: @escaping CMPedometerHandler)
问题1
我注意到另一个区别是完成处理程序具有类型的类型别名,这适用于所有 ios 框架设计吗?
typealias CMPedometerHandler = (CMPedometerData?, Error?) -> Void
问题2
块也使用回调函数吗?块也有转义关键字,这意味着闭包将在外部函数返回后被调用,这对我来说听起来很“回调”。
问题3
如果问题 2 的答案是肯定的,那么重新发明轮子的原因是什么,为什么不把它们都称为块或完成处理程序
【问题讨论】:
标签: ios swift closures block completionhandler