Channel的数据结构是什么?

Channel的数据结构是什么?

数据结构

保存数据的结构是一个环形队列,有两个读写指针分别指向下一个被读取的元素位置和下一个可放置数据的空位置。

goroutine 队列的waitq 类型是 sudog 的一个双向链表,而 sudog 实际上是对 goroutine 的一个封装:

Reference

Last updated