缓冲通道的内存分配如何工作

Sam*_*Lee 4 go

如果我有一个这样的缓冲通道:

ch := make(chan int, 1000000)
Run Code Online (Sandbox Code Playgroud)

是立即分配了 8MB 的内存,还是内存分配会根据数据量增长/缩小?

eva*_*nal 6

缓冲区的完整大小(加上我相信通道本身的两个字)将被预先分配并保留,直到它被垃圾收集。