
获得徽章 7
赞了这篇文章
赞了这篇文章
#晒出你的读书笔记# 《Go 并发编程实战》defer语句:
* 当外围函数中的语句正常执行完毕时,只有其中所有的延时函数都执行完毕,外围函数才会真正的结束执行
* 当执行外围函数中的 return 语句是,只有其中所有的延迟函数都执行完毕后,外围函数才会真正的返回
* 当外围函数中的代码引发运行时恐慌时,只有其中所有的延迟函数都执行完毕后,该运行时恐慌才会真正被扩散至调用函数。
正因为 defer 语句有这样的特性,所以他成为了执行释放资源或异常处理等收尾任务的首选。
* 对延迟函数的调用总会在外围函数执行结束前执行
* defer 语句在外围函数体中的位置不限,并数量不限。
* 当外围函数中的语句正常执行完毕时,只有其中所有的延时函数都执行完毕,外围函数才会真正的结束执行
* 当执行外围函数中的 return 语句是,只有其中所有的延迟函数都执行完毕后,外围函数才会真正的返回
* 当外围函数中的代码引发运行时恐慌时,只有其中所有的延迟函数都执行完毕后,该运行时恐慌才会真正被扩散至调用函数。
正因为 defer 语句有这样的特性,所以他成为了执行释放资源或异常处理等收尾任务的首选。
* 对延迟函数的调用总会在外围函数执行结束前执行
* defer 语句在外围函数体中的位置不限,并数量不限。
展开
1
3
赞了这篇文章
赞了这篇文章