docs(go): 添加内存逃逸学习笔记与示例代码
- 新增 go/basics/MemoryEscape/main.go,演示返回局部变量指针和闭包引用两种典型逃逸场景 - 在 note/随手记/go.md 中补充内存逃逸的概念、影响、常见原因及逃逸分析命令 - 清理 note/随手记/网址.md 中的多余空行
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
)
|
||||
type User struct {
|
||||
Name string
|
||||
}
|
||||
|
||||
func NewUser() *User {
|
||||
u := User{}
|
||||
return &u
|
||||
}
|
||||
|
||||
func ClosureFunc() func() int {
|
||||
a := 1
|
||||
return func() int {
|
||||
return a
|
||||
}
|
||||
}
|
||||
func main() {
|
||||
fmt.Println(NewUser())
|
||||
cf:= ClosureFunc()
|
||||
fmt.Println(cf())
|
||||
}
|
||||
Reference in New Issue
Block a user