目录 单核 CPU,开两个 Goroutine,其中一个死循环,会怎么样? GMP为什么要有P 当go服务部署到线上了,发现有内存泄露,该怎么处理 go什么情况下会GC sysmon在go中有什么作用 go的GMP go调度中阻塞都有那些方式,调度器怎么处理 go内存管理 go函数调用规则 go 接口 interface gopark go struct 能不能比较 主协程如何等其余协程完再操作 channel读写问题 http包的内存泄漏 在使用 map 时尽量不要在 big map 中保存指针?为什么 go func() 的创建流程(假设已经初始化了整个进程,在运行时) go性能调优 init函数的执行顺序 主 Goroutine 的一生 单例模式 1.常见的 GC 实现方式有哪些?Go 语言的 GC 使用的是什么? # 2.三色标记法 3.STW是什么意思 4.有了 GC,为什么还会发生内存泄露? 形式1:预期能被快速释放的内存因被根对象引用而没有得到迅速释放 # 形式2:goroutine 泄漏 # 5.什么是写屏障、混合写屏障,如何实现? 6.go的gc执行过程 7.根对象是什么 8.触发go gc的时机是什么 9.如果内存分配速度超过了标记清除的速度怎么办? # 10.Go 的垃圾回收器有哪些相关的 API?其作用分别是什么? 11.Go 的 GC 如何调优?