06 2021 档案

摘要:Go V1.3 之前的标记-清除算法 此算法主要有两个主要的步骤: 标记(Mark phase) 清除(Sweep phase) 具体过程比较简单,就不赘述了,说一下它的缺点吧 ​ 缺点 STW,stop the world;让程序暂停,程序出现卡顿 (重要问题)。 标记需要扫描整个heap 清除数 阅读全文
posted @ 2021-06-05 16:34 kxhzzz 阅读(467) 评论(0) 推荐(0)
摘要:简介 channel一个类型管道,通过它可以在goroutine之间发送和接收消息。它是Golang在语言层面提供的goroutine间的通信方式。Go依赖于成为CSP的并发模型,通过Channel实现这种同步模式。Golang并发的核心哲学是不要通过共享内存进行通信。所以数据在不同协程中的传输都是 阅读全文
posted @ 2021-06-05 16:29 kxhzzz 阅读(1027) 评论(0) 推荐(0)
摘要:前言 GoLang有一个特性,就是原生支持协程,协程是一种用户态的线程,它的调度和切换是在用户态去做的,也就是由Go的调度器来实现,但是最终的执行工作还是由内核线程去完成,也就是一批协程通过相应进程的lwp与一批内核线程进程映射。 Go调度器组成 Go程序通过调度器来调度Goroutine在内核级线 阅读全文
posted @ 2021-06-01 17:04 kxhzzz 阅读(736) 评论(0) 推荐(0)