问题提出
使用过swift开发过iOS应用的广大搬砖工都知道, 在swift语言里, 有一个很好用的关键字 defer
这个defer有什么用呢?
在某个函数或者代码块中, 如果使用了defer 添加了一段代码, 会发生什么呢?
哈哈, 当然是 在代码块结束时, 一定会调用这段代码了。
这样有什么好处呢?
我们知道, 有些操作需要很多步骤,其中一步出错,就可能需要是整个操作流程结束, 但是结束之前那些已经申请的资源怎么办呢? 如果不处理肯定会出现资源泄露的啊。这是defer就派上用场了,使用defer 之后, 在后面的代码块中去释放申请占用的资源, 就会保证在代码块结束之前一定会调用这个defer代码块来释放资源, 保证了一定的安全性