目录
多图详解Go的sync.Pool源码 - luozhiyun`s Blog
单核 CPU,开两个 Goroutine,其中一个死循环,会怎么样?
在使用 map 时尽量不要在 big map 中保存指针?为什么
go func() 的创建流程(假设已经初始化了整个进程,在运行时)
1.常见的 GC 实现方式有哪些?Go 语言的 GC 使用的是什么? #
形式1:预期能被快速释放的内存因被根对象引用而没有得到迅速释放 #
10.Go 的垃圾回收器有哪些相关的 API?其作用分别是什么?
new和make的区别
new是一个分配内存的内置函数,传入参数是类型,不是值,返回的值是指向该类型新分配的零值 的指针,我们平常在使用指针的时候是需要分配内存空间的,未分配内存空间的指针直接使用会使 程序崩溃;
make函数是专门支持 slice 、 map 、 channel 三种数据类型的创建,make内置函数分配并初始 化一个 slice 、 map 、 chan ;类型,使用make初始化切片如果指定长度,会初始化值为零值;
go context使用场景
1.超时控制
2.协程间传递数据
CancelContext,
TimeoutContext,
DeadLineContext,
ValueContext