go-pattern-examples/gomore/02_profiles/README.md
2020-05-02 18:25:12 +08:00

600 B

时间差模式

主要用来计算,一段是代码的执行时差:

defer后面跟的函数的参数,会被先被计算并被存储为函数本地变量 并且,当defer后的函数代码在整个代码块离开作用域被调用时,就会利用前面已经存储的值进行计算,这也算是一个技巧,示例如下:

func YourFunction(input SomeType) error {

  defer YourFunc(time.Now(), ....) //一定要放在函数的第一行或者你想要计算时差的代码的前面.

     //其他代码..
     //其他你想计算允许时间的函数代码

}