猿问

通道中的元素数

使用缓冲通道,如何测量通道中有多少个元素?例如,我正在这样创建和发送频道:


send_ch := make(chan []byte, 100)

// code

send_ch <- msg

我想衡量有多少封邮件都在通道send_ch。


我知道由于并发,该度量将不准确,因为在度量和操作之间可能会发生先发制人(例如,在此视频中讨论的Google I / O 2012-Go并发模式)。我将使用它在生产者和消费者之间进行流控制,即,一旦我通过了较高的水印,就更改了某些行为,直到我通过了较低的水印。


神不在的星期二
浏览 151回答 1
1回答
随时随地看视频慕课网APP

相关分类

Go
我要回答