func test() {
a:=1
defer fmt.println(a)//注册这一刻,a=1直接求值缓存
a=999
}
// 输出结果:1 func Handler() {
start :=time.Now()
defer fmt.println("耗时:",time.s***art))
// time.S***art)是执行时进行求值的
} start是注册时固定的时间点 mu.Lock() defer mu.Unlock() // 后续是为了方便业务逻辑通顺主要的目的是为了锁对象注册时绑定,保证一定能正常解锁,为了后面出现死锁的现象