Golang
Go语言
gong?
这个作者很懒,什么都没留下…
展开
-
go语言内二维关联数组(字典)的值
代码介绍 HowTocreate2DMap() HowTocreate2DMap()演示了如何创建一个二维关联数组(后面简称为字典)。如果你知道如何创建可以直接跳过。 func1() func1()为实际的探究内容 package main import "fmt" type MyMap map[int]int //如何创建一个二位字典 func HowTocreate2DMap(){ m:=make(map[int]MyMap) //指向字典的字典 m[0]=make(map[int]int)原创 2022-03-14 10:57:32 · 534 阅读 · 0 评论 -
go 内存逃逸示例
什么是内存逃逸,在什么情况下发生,原理是什么? golang程序变量会携带有一组校验数据,用来证明它的整个生命周期是否在运行时完全可知。如果变量通过了这些校验,它就可以在栈上分配。否则就说它 逃逸 了,必须在堆上分配。 能引起变量逃逸到堆上的典型情况: 在方法内把局部变量指针返回 局部变量原本应该在栈中分配,在栈中回收。但是由于返回时被外部引用,因此其生命周期大于栈,则溢出。 发送指针或带有指针的值到 channel 中。 在编译时,是没有办法知道哪个 goroutine 会在 channel 上接收数据。原创 2022-03-07 15:36:56 · 515 阅读 · 0 评论